django+react
<pre class="js_message_plain ng-binding"><span data-mce-="">后端: </span></pre><pre class="js_message_plain ng-binding"><span data-mce-=""><br> >>> pip install Django==1.11 <br> >>> sudo pipinstall django-webpack-loader <br> Successfully installed django-webpack-loader-0.6.0 <br> >>>python -m django --version 1.11.11<br><br> 需要解决跨域问题, 前端才能访问<br><br></span>前端:<br> <span data-mce-="">node和npm安装, 包下载: http://nodejs.cn/download/ <br> 解压:/usr/local/application<br> $ sudo tar xvJf node-v12.14.1-linux-x64.tar.xz <br> sudo mv node-v12.14.1-linux-x64 nodejs <br> sudo ln -s /usr/local/application/nodejs/bin/npm /usr/local/bin/ <br> sudo ln -s /usr/local/application/nodejs/bin/node /usr/local/bin/</span></pre>
<pre class="js_message_plain ng-binding"><span data-mce-="">webpack管理项目:<br></span></pre>
<pre class="js_message_plain ng-binding"><span data-mce-=""><br> webpack <br> 前端项目模块(css,js,img)管理工具,把项目所有依赖的库打包到一个或多个bundle文件(例如,bundle.js)。 <br> babel <br> Javascript 编译器,能把新的 ES6 语法转换成 ES5 语法,兼容现有的浏览器。 <br> webpack-bundle-tracker <br> 把 webpack 编译过程记录到文件(webpack-stats.json),供 django-webpack-loader 使用<br><br>3. 生成项目 <br> * 创建 React 项目 在项目根目录下,新建 frontend 目录,使用 npm init 创建前端项目。<br> : $ mkdir frontend && cd frontend && npm init <br> 目录结构如下: <br> user@conti-del-lp-018:~/Documents/backup_code/new_atp/Fashion_ATP$ ll <br> total 24 <br> drwxrwxr-x 5 user user 4096 1月10 14:46 ./ <br> drwxrwxr-x 3 user user 4096 1月10 14:46 ../ <br> drwxrwxr-x 2 user user 4096 1月 9 16:21 Fashion_ATP/ <br> drwxrwxr-x 4 user user 4096 1月10 14:46 frontend/ <br> -rwxr-xr-x 1 user user809 1月 9 15:17 manage.py <br> 4. 安装 React 开发相关的依赖 <br> $ cd frontend $ npm install --save-dev babel-cli babel-loader babel-preset-env babel-preset-react babel-preset-stage-0 react <br> react-dom react-hot-loader webpack webpack-cli webpack-bundle-tracker webpack-dev-server <br> 安装出现错误: Error: connect ECONNREFUSED 104.16.18.35:443 <br> 解决办法: 设置npm的代理: npm config set proxy=http://10.69.60.221:8080 ,npm config set registry=http://registry.npmjs.org <br> 其中,--save-dev 会把依赖写入package.json。这些第三方库位于当前项目下node_modules目录。如果有些库需要全局使用, <br> 安装时需要用-g选项。如果需要重装依赖库,只需要执行npm instal。 <br> 创建 webpack 配置文件 <br> $ cd frontend $ mkdir -p assets/js $ touch webpack.config.js $ touch assets/js/index.js <br> 其中,assets/js目录为我们代码所在目录。webpack.config.js是webpack的配置文件。assets/js/index.js是项目的入口文件。 <br> webpack 从该文件开始加载所有项目依赖模块。Webpack 官方配置手册<br> 5. 修改 webpack.config.js <br><br><br><br><span style="color: rgba(0, 0, 255, 1)">create-react-app创建多页面应用 </span> <br></span></pre>
<pre class="js_message_plain ng-binding"><span data-mce-=""> </span></pre>
<p>1. /usr/local/application/nodejs/bin/create-react-app my-app</p>
<p><span data-mce-=""><span data-mce-="">2. npm install jquery --save</span></span></p>
<p><span data-mce-=""><span data-mce-=""><span data-mce-=""><span data-mce-="">3. npm install bootstrap@3 --save</span></span></span></span></p>
<p><span data-mce-=""><span data-mce-=""><span data-mce-=""><span data-mce-=""><span data-mce-="">4. 配置 config/webpack.config.js 文件,需要先运行 npm run eject 命令(默认webpack的配置文件都是没有的,运行这个命令才能调出来)<br> run之前需要运行:<br> git add .<br> git commit -am "Save before ejecting"</span></span></span></span></span></p>
<p> </p>
<p><span data-mce-=""><span data-mce-=""><span data-mce-=""><span data-mce-=""><span data-mce-=""><span data-mce-=""><span data-mce-="">前端遇到的相关问题:</span></span></span></span></span></span></span></p>
<p><span data-mce-=""><span data-mce-=""><span data-mce-=""><span data-mce-=""><span data-mce-=""><span data-mce-=""><span data-mce-=""><span data-mce-="">问题1:<br> File "/usr/local/lib/python3.5/dist-packages/webpack_loader/loader.py", line 43, in filter_chunks<br> for regex in self.config['ignores'])<br> File "/usr/local/lib/python3.5/dist-packages/webpack_loader/loader.py", line 43, in <genexpr><br> for regex in self.config['ignores'])<br> TypeError: string indices must be integers<br><br> 解决办法:<br> npm install --save-dev webpack-bundle-tracker@0.4.3</span></span></span></span></span></span></span></span></p>
<pre class="js_message_plain ng-binding"><span data-mce-=""><br> </span></pre><br><br>
来源:https://www.cnblogs.com/ting152/p/12320800.html
頁:
[1]