最近学习react,公司的项目是使用create-react-app来搭建的,而我想从新使用node+mysql+react来搭建一个新的博客。javascript
今天尝试从零开始搭建一个webpack+react项目,过程还算顺利。总结一下步骤:css
一、建立一个项目文件夹Blog,cd进入文件夹目录,输入html
npm init -y
生成package.json文件;java
二、工程目录建立,以下如是个人工程目录node
public是webpack打包后生成的文件夹,src是逻辑组件文件夹,assets是静态文件mysql
webpack.config.js用来配置webpack;.babelrc配置babelreact
三、建立必须文件webpack
在src文件夹中建立入口文件index.js,建立文件夹conponents用来承载组件;建立App,js做为组件入口文件;web
四、安装依赖,如下为我所安装的依赖sql
五、webpack的配置,重中之重
var path = require('path'); module.export = { mode:'development',//设置模式 entry:path.resolve(__dirname,'src'),//入口文件 output:{ path:path.resolve(__dirname,'public'),//出口文件夹 filename:'build.js'//输出的文件名称 }, modules:{ rules:[ { test:/\.js$/, exclude:/node_modules/, loader:'babel-loader', }, { test:/\.scss$/, loader:['style-loader','css-loader','sass-loader'] } ] }, devServer:{ inline:true,//实时更新 open:true,//更新后自动打开浏览器 contentBase:path.join(__dirname,'./public')//指向根目录位置,也就是index.html文件位置 } }
.babelrc配置
{ "presets":["es2015","react"], "plugins":["transform-object-rest-spread"] }
六、项目开始
在src的index.js入口文件下
import React from 'react'; import ReactDOM from 'react-dom'; import App from './components/App'; ReactDOM.render(<App />,document.getElementById('app'));
components目录下的组件入口文件App.js
import React from 'react'; class App extends React.Component { render() { return ( <div> Hello World! </div> ); } } export default App;
7.运行npm start;要在package.json中的scripts字段中设置start命令内容:
"start":"webpace-dev-server --devtool eval --progress --colors"
便可启动项目;若是端口冲突,可在webpack.config.js文件下设置devServer的port属性;