(一)前言
一个完整的web开发手脚架,应该包含以下
- babel-loader 图片 音视频 字体 样式处理等loader
- 开发环境配置
- 生产环境配置,流程化前端多生产构建
- 生产环境打包优化, 如构建速度,打包外链库,抽离公共模块,页面切片处理(代码内部),
- git commit 检查规范 和 eslint配置
(二)新增eslint配置
安装依赖
$ yarn add babel-eslint eslint eslint-config-airbnb eslint-loader eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-react eslint-plugin-react-native --dev
- 在根文件下新增.eslintrc文件
{
"parser": "babel-eslint",
"parserOptions": {
"ecmaVersion": 7,
"sourceType": "module",
"ecmaFeatures": {
"jsx": true,
"modules": true
}
},
"extends": "airbnb",
"env": {
"es6": true
},
"plugins": [
"react",
"react-native",
"jsx-a11y",
"import"
],
"globals": {
"__DEV__": true,
"__dirname": false,
"__fbBatchedBridgeConfig": false,
"alert": false,
"cancelAnimationFrame": false,
"cancelIdleCallback": false,
"clearImmediate": true,
"clearInterval": false,
"clearTimeout": false,
"console": false,
"document": false,
"escape": false,
"Event": false,
"EventTarget": false,
"exports": false,
"fetch": false,
"FormData": false,
"global": false,
"jest": false,
"Map": true,
"module": false,
"navigator": false,
"process": false,
"Promise": true,
"requestAnimationFram