欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

手動(dòng)用webpack搭建第一個(gè)ReactApp的示例

 更新時(shí)間:2018年04月11日 09:26:37   作者:stormxing  
本篇文章主要介紹了手動(dòng)用webpack搭第一個(gè) ReactApp的示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

學(xué)習(xí) React 可以用以下方法直接創(chuàng)建一個(gè) ReactApp ,本文主要介紹如何手動(dòng)來搭這個(gè)環(huán)境。

npm install -g create-react-app
create-react-app my-app
cd my-app
npm start

使用淘寶 NPM 鏡像

使用 React 和 Webpack 需要安裝很多依賴包,不走代理的話速度會(huì)非常慢,也很容易出錯(cuò),所以這里推薦使用淘寶的 npm 鏡像來安裝,速度非常理想。

使用淘寶鏡像安裝 npm 包只需要兩步即可:

安裝 cnpm

npm install -g cnpm --registry=https://registry.npm.taobao.org

使用 cnpm 來安裝包

只需要將 npm 替換成 cnpm 即可獲得高速下載。

cnpm install [name]

下文中給出的所有安裝依賴包的命令都使用 cnpm 安裝的。你也可以用 npm。

開始第一個(gè) React

初始化一個(gè) json 配置文件

npm init

執(zhí)行上面這條命令后輸入一些信息即可創(chuàng)建 json 文件,這個(gè)文件也可以手動(dòng)建。entry point 要填 index.js,其他的隨意。

安裝 React

cnpm install react react-dom --save

安裝編譯工具 babel

復(fù)制代碼 代碼如下:
cnpm install babel-core babel-loader babel-preset-react babel-preset-es2015 --save-dev

安裝打包工具 wepback

全局的和當(dāng)前文件夾的最好都裝上,這樣可以花式打包。

cnpm install webpack webpack-cli --save-dev
cnpm install webpack-dev-server --save-dev
cnpm install webpack webpack-cli -g
cnpm install webpack-dev-server -g

配置 webpack

為了方便,以下所有文件都建在同一個(gè)文件夾下面。

新建 webpack.config.js 并添加以下內(nèi)容

const path =require('path'); 
module.exports = { 
 entry: path.resolve(__dirname, 'index.js'), 
 output: { 
 path: path.resolve(__dirname, ''), 
 filename: "bundle.js" 
 }, 
 mode: 'development',
 module: { 
 rules: [ 
  { 
  test: /\.js$/, 
  exclude: /node_modules/, 
  loader: "babel-loader", 
  options: { 
   presets: ["es2015","react"] 
  } 
  } 
 ] 
 } 
}; 

在 webpack4 中 mode 屬性如果不指定會(huì)有警告。

創(chuàng)建測試文件

新建 index.js 文件

import React from 'react'; 
import ReactDOM from 'react-dom'; 
 ReactDOM.render( 
 <h1>我的第一個(gè)react例子</h1>, 
 document.getElementById('root') 
 ); 

新建 index.html 文件

<!DOCTYPE html> 
 <html> 
 <head> 
 <meta charset="UTF-8" /> 
 <title>example</title> 
 </head> 
 <body> 
 <div id="root"></div> 
 <script src="bundle.js"></script> 
 </body> 
 </html> 

啟動(dòng)

最后執(zhí)行 webpack 即可將 index.js 打包生成瀏覽器可執(zhí)行的 bundle.js 文件。此時(shí),index.html 文件已經(jīng)可在瀏覽器中執(zhí)行了。

附上我的 package.json 文件,直接執(zhí)行 cnpm install 就能安裝所有依賴。

{
 "name": "myapp",
 "version": "1.0.0",
 "description": "",
 "main": "index.js",
 "scripts": {
 "start": "webpack",
 "start:dev": "webpack-dev-server"
 },
 "author": "",
 "license": "ISC",
 "devDependencies": {
 "babel-core": "^6.26.0",
 "babel-loader": "^7.1.4",
 "babel-preset-es2015": "^6.24.1",
 "babel-preset-react": "^6.24.1",
 "webpack": "^4.2.0",
 "webpack-cli": "^2.0.12",
 "webpack-dev-server": "^3.1.1"
 },
 "dependencies": {
 "react": "^16.2.0",
 "react-dom": "^16.2.0"
 }
}

熱啟動(dòng)

如果 index.js 發(fā)生了改變,則需要再編譯打包一次,才能更新 bundle.js 文件,這樣效率非常低。webpack 提供了一條命令可以實(shí)時(shí)進(jìn)行編譯打包。

webpack --watch

執(zhí)行這條命令后,index.js 文件就能被動(dòng)態(tài)編譯打包了,非常方便。

不過上面的熱啟動(dòng)還是很麻煩,還要手動(dòng)刷新瀏覽器,這里還有很牛逼的。

直接執(zhí)行 webpack-dev-server 即可自動(dòng)刷新瀏覽器

 

如果要換端口的話,在啟動(dòng)命令后面加上--port 端口號(hào)即可,例如:webpack-dev-server --port 8001

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • React的組件協(xié)同使用實(shí)現(xiàn)方式

    React的組件協(xié)同使用實(shí)現(xiàn)方式

    這篇文章主要介紹了React的組件協(xié)同使用,文中給大家提到在React開發(fā)中,有哪些場景的組件協(xié)同?又如何去實(shí)現(xiàn)組件的協(xié)同使用呢?本文都給大家提到,感興趣的朋友跟隨小編一起看看吧
    2021-09-09
  • React組件中監(jiān)聽函數(shù)獲取不到最新的state問題

    React組件中監(jiān)聽函數(shù)獲取不到最新的state問題

    這篇文章主要介紹了React組件中監(jiān)聽函數(shù)獲取不到最新的state問題問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • 詳解在React里使用

    詳解在React里使用"Vuex"

    本篇文章主要介紹了詳解在React里使用"Vuex",小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-04-04
  • React?Native采用Hermes熱更新打包方案詳解

    React?Native采用Hermes熱更新打包方案詳解

    這篇文章主要介紹了React?Native采用Hermes熱更新打包實(shí)戰(zhàn),在傳統(tǒng)的熱更新方案中,我們實(shí)現(xiàn)熱更新需要借助code-push開源方案,包括熱更新包的發(fā)布兩種方式詳解,感興趣的朋友一起看看吧
    2022-05-05
  • React.memo函數(shù)中的參數(shù)示例詳解

    React.memo函數(shù)中的參數(shù)示例詳解

    這篇文章主要為大家介紹了React.memo函數(shù)中的參數(shù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • React Fiber源碼深入分析

    React Fiber源碼深入分析

    Fiber 可以理解為一個(gè)執(zhí)行單元,每次執(zhí)行完一個(gè)執(zhí)行單元,React Fiber就會(huì)檢查還剩多少時(shí)間,如果沒有時(shí)間則將控制權(quán)讓出去,然后由瀏覽器執(zhí)行渲染操作,這篇文章主要介紹了React Fiber架構(gòu)原理剖析,需要的朋友可以參考下
    2022-11-11
  • 詳解使用React全家桶搭建一個(gè)后臺(tái)管理系統(tǒng)

    詳解使用React全家桶搭建一個(gè)后臺(tái)管理系統(tǒng)

    本篇文章主要介紹了使用React全家桶搭建一個(gè)后臺(tái)管理系統(tǒng),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-11-11
  • React useEffect的理解與使用

    React useEffect的理解與使用

    這篇文章主要介紹了React useEffect的理解與使用,幫助大家更好的理解和學(xué)習(xí)使用React,感興趣的朋友可以了解下
    2021-04-04
  • React?split實(shí)現(xiàn)分割字符串的使用示例

    React?split實(shí)現(xiàn)分割字符串的使用示例

    當(dāng)我們需要將一個(gè)字符串按照指定的分隔符進(jìn)行分割成數(shù)組時(shí),我們可以在組件的生命周期方法中使用split方法來實(shí)現(xiàn)這個(gè)功能,本文就來介紹一下,感興趣的可以了解下
    2023-10-10
  • React實(shí)現(xiàn)圖片懶加載的常見方式

    React實(shí)現(xiàn)圖片懶加載的常見方式

    圖片懶加載是一種優(yōu)化網(wǎng)頁性能的技術(shù),它允許在用戶滾動(dòng)到圖片位置之前延遲加載圖片,通過懶加載,可以在用戶需要查看圖片時(shí)才加載圖片,避免了不必要的圖片加載,本文給大家介紹了React實(shí)現(xiàn)圖片懶加載的常見方式,需要的朋友可以參考下
    2024-01-01

最新評(píng)論