安裝配置Babel
babel-preset-es2015 ES6語法包,使代碼可以隨意地使用ES6的新特性。
babel-preset-react React語法包,專門用于React的優(yōu)化,在代碼中可以使用React ES6 classes的寫法,同時直接支持JSX語法格式
安裝Babel loader
// 安裝babel-core核心模塊和babel-loader npm install babel-core babel-loader --save-dev // 安裝ES6 和 React 支持 npm install babel-preset-es2015 babel-preset-react --save-dev
配置 .babelrc
安裝完Babel和它的插件,配置一下它的規(guī)則,在根目錄下新建一個.babelrc空文件:
// 告訴Babel,編譯JavaScript代碼的時候要用這兩個presets編譯 { "preset": ["es2015", "react”] }安裝配置ESLint
安裝ESLint loader
為webpack添加這個preLoaders(在loader處理資源之前,先用preLoaders進(jìn)行處理,代碼檢查在代碼轉(zhuǎn)換之前進(jìn)行)
npm install eslint eslint-loader --save-dev
這里使用Airbnb開發(fā)配置合集eslint-config-airbnb,這個配置合集里面還包括以下3個插件:
npm install eslint-plugin-import eslint-plugin-react eslint-plugin-jsx-a11y --save-dev npm install eslint-config-eslint
配置 .eslintrc
在根目錄下新建一個.eslintrc的空文件:
{ "extends": "airbnb", "rules": { "comma-dangle": ["error", "never"] } }安裝配置webpack
配置webpack之前,先安裝一個webpack的插件——html-webpack-plugin,它可以幫助我們自動生成HTML頁面,并且引入正確的JavaScript文件依賴:
npm install html-webpack-plugin —save-dev
在項(xiàng)根目錄下新建一個webpack.config.js文件:
let path = require("path") let webpack = require("webpack") let HtmlwebpackPlugin = require("html-webpack-plugin") // 一些常用路徑 const ROOT_PATH = path.resolve(__dirname) const APP_PATH = path.resolve(ROOT_PATH, "app") const BUILD_PATH = path.resolve(ROOT_PATH, "build") module.exports = { entry: { app: path.resolve(APP_PATH, "index.jsx") }, output: { path: BUILD_PATH, filename: "bundle.js" }, // 開啟 dev source map devtool: "eval-source-map", // 開啟 webpack dev server devServer: { historyApiFallback: true, hot: true, inline: true, progress: true }, modules: { // 配置preLoaders, 將eslint 添加進(jìn)去 preLoaders: [ { test: /.jsx?$/, loaders: ["eslint"], include: APP_PATH } ], // 配置loader,將Babel添加進(jìn)去 loaders: [ { test: /.jsx?$/, loaders: ["babel"], include: APP_PATH } ] }, // 配置 plugin plugins: [ new HtmlwebpackPlugin({ title: "my first react webpack" }) ], resolve: { extensions: ["", ".js", ".jsx"] // 在js中import加載jsx擴(kuò)展名的腳本 } }添加組件熱加載(HMR)功能
npm install babel-preset-react-hrme --save-dev
這個preset里面其實(shí)包括兩方面:
react-transform-hmr用來實(shí)現(xiàn)熱加載
react-transform-catch-errors用來捕獲render里面的方法,并且直接展示在界面上
配置一下 .babelrc:
{ "preset": ["es2015", "react"], "env": { "development": { "presets": ["react-hrme"] } } }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/88406.html
摘要:系列環(huán)境搭建一手動搭建系列環(huán)境搭建二不同環(huán)境不同配置系列環(huán)境搭建三打包性能優(yōu)化實(shí)際項(xiàng)目中,往往不同環(huán)境有不同的構(gòu)建需求。 React系列---Webpack環(huán)境搭建(一)手動搭建React系列---Webpack環(huán)境搭建(二)不同環(huán)境不同配置React系列---Webpack環(huán)境搭建(三)打包性能優(yōu)化 實(shí)際項(xiàng)目中,往往不同環(huán)境有不同的構(gòu)建需求。比如開發(fā)、測試和生產(chǎn)環(huán)境對應(yīng)的后端接口地...
摘要:官方文檔中文翻譯構(gòu)建用戶界面的庫。官方文檔建議學(xué)習(xí)時以官方文檔為準(zhǔn),中文翻譯或者第三方作者的教程可以幫助你理清思路會用到的重要知識點(diǎn)我也會進(jìn)行簡明的解釋,如遇到錯誤或者不理解的內(nèi)容,歡迎實(shí)時指出。 前言 前面提到前端大統(tǒng)一的概念,如果感興趣,歡迎說說自己的看法,點(diǎn)擊前往。Web前端框架層出不窮,不可能面面俱到,這里給個小建議: 如果對Weex App感興趣,應(yīng)該選擇vue框架; 如果...
摘要:官方文檔中文翻譯構(gòu)建用戶界面的庫。官方文檔建議學(xué)習(xí)時以官方文檔為準(zhǔn),中文翻譯或者第三方作者的教程可以幫助你理清思路會用到的重要知識點(diǎn)我也會進(jìn)行簡明的解釋,如遇到錯誤或者不理解的內(nèi)容,歡迎實(shí)時指出。 前言 前面提到前端大統(tǒng)一的概念,如果感興趣,歡迎說說自己的看法,點(diǎn)擊前往。Web前端框架層出不窮,不可能面面俱到,這里給個小建議: 如果對Weex App感興趣,應(yīng)該選擇vue框架; 如果...
摘要:接下來安裝和,執(zhí)行命令安裝很順利,沒有遇到任何問題。再總結(jié)一下我們遇到的坑初始化時的項(xiàng)目名稱要合規(guī),特別是不能出現(xiàn)中劃線下劃線。另外再增加,這樣刷新的速度會大大加快最終的文件目錄結(jié)構(gòu)為各文件的最終內(nèi)容本文也同步發(fā)表在我的公眾號“我的天空” 從零開始,用最少的配置、最少的代碼、最少的依賴來搭建一個最簡單的webpack+react環(huán)境。 最近在玩webpack+rea...
摘要:的選項(xiàng)中,是文件的輸出路徑是暴露的對象名,要跟保持一致是解析包路徑的上下文,這個要跟下面要配置的保持一致。最后修改一下模板,增加引用文件給入口文件再加點(diǎn)依賴模塊,方便打包觀察運(yùn)行打包可以看到,入口文件里依賴的,模塊,直接引用了。 React系列---Webpack環(huán)境搭建(一)手動搭建React系列---Webpack環(huán)境搭建(二)不同環(huán)境不同配置React系列---Webpack環(huán)境...
摘要:使用包管理工具,基于構(gòu)建工具,搭建開發(fā)環(huán)境由于一些軟件安裝跟系統(tǒng)環(huán)境相關(guān),故這里查看本文檔,需要根據(jù)自己的系統(tǒng)環(huán)境,選擇相對應(yīng)的系統(tǒng)版本。 使用Yarn包管理工具,基于Webpack構(gòu)建工具,搭建React開發(fā)環(huán)境 showImg(https://segmentfault.com/img/remote/1460000019833533?w=560&h=310); 由于一些軟件安裝跟系統(tǒng)...
閱讀 3521·2021-11-08 13:20
閱讀 3444·2021-09-30 09:48
閱讀 2677·2021-09-29 09:41
閱讀 645·2021-09-22 15:04
閱讀 2584·2021-08-23 09:44
閱讀 3836·2020-12-03 17:26
閱讀 1080·2019-08-30 14:10
閱讀 1650·2019-08-29 18:34