搭建react 項目過程

1挤安、新建react 文件夾? ?進入文件夾 執(zhí)行命令 npm init -y 會出現(xiàn)package.json 文件


快速初始化項目

2导梆、新建src 文件夾? dist 文件夾

3腹躁、在src下創(chuàng)建一個新的index.html 文件 丹擎,在src 下創(chuàng)建 main.js 文件

4砌滞、打開項目 安裝 webpack? 執(zhí)行? npm i webpack -D

5、安裝 webpack-cli? ? 執(zhí)行 npm i webpack-cli -D

合并命令: 第四步 第五步 可以 合并執(zhí)行命令 npm i webpack webpack-cli -D

6念链、項目下新建??webpack.config.js? 文件 寫入 JS 代碼(?或者 mode 模式為 production)

兩個模式的區(qū)別 大概就是 文件大小的區(qū)別

module.exports = {

mode:'development'

}

注意:在webpack 4.x 版本中? 有 約定大于配置的約定 默認的打包路徑 是src-> index.js? 所以可以講上面步驟中建的main.js 文件改名為index.js

執(zhí)行 webpack 的時候會有報錯信息

如圖


如果 碰到 此命令 則 執(zhí)行?Set-ExecutionPolicy Unrestricted -Scope CurrentUser? ?這個命令解決問題


以上步驟 為手動引入文件 每次更新文件都需要 再次打包 執(zhí)行webpack 盼忌。

7、執(zhí)行? npm i webpack-dev-server -D

8掂墓、在package.json 中增加 dev 命令? 如圖


9碴犬、增加 后執(zhí)行命令 npm run dev 項目輸出 如圖


注意紅框中部分

重新整理項目文件目錄 新建public 文件夾

將src 目錄下的index.html 文件移動到?public 下 ,重新啟動項目 即可

10梆暮、配置實時打包功能? 執(zhí)行命令? npm i html-webpack-plugin -D? ?

11服协、導入在內(nèi)存中自動生成的index頁面插件

12、增加 如下代碼?



這樣的話 我們就可以刪掉在public / index.html 中手動引入的main.js 文件了

13啦粹、執(zhí)行 npm i react react-dom -S? 安裝react-dom? ?:專門進行dom 操作偿荷,主要應(yīng)用場景就是ReactDom.render(),

react:專門用于創(chuàng)建組件和虛擬dom唠椭,同事組件的生命周期都在這個包中

14跳纳、引入 react 和? react-dom


引入 創(chuàng)建 掛載? 等操作

15、React.createElement 參數(shù)說明

參數(shù)1:創(chuàng)建元素的類型贪嫂,字符串寺庄,標識元素名稱

參數(shù)2:一個對象,其中綁定例如 class title 等屬性參數(shù)力崇,或者為null

參數(shù)3:綁定節(jié)點或者子節(jié)點斗塘。

參數(shù)n:其他節(jié)點

16、ReactDOM.render() 參數(shù)說明

參數(shù)1:要渲染的虛擬dom元素

參數(shù)2:指定html頁面中 的一個元素容器

17亮靴、實現(xiàn)嵌套 如圖


在JS 文件中寫入的 html 語法 叫做JSX 語法馍盟,符合 XML 規(guī)范,但是需要下載babel 進行轉(zhuǎn)換

18茧吊、執(zhí)行命令?

npm i babel-core babel-loader babel-plugin-transform-runtime -D (插件)

npm i babel-preset-env babel-preset-stage-0?babel-preset-react -D? (語法)

這三個執(zhí)行完后 再進行配置贞岭,就可以將JSX語法轉(zhuǎn)換成瀏覽器識別的react-creatElement


19八毯、安裝完后 在webpack.config.js 文件中配置剛才安裝的第三方loader。webpack默認只能處理打包瞄桨,.js 后綴類型的文件话速;像.png .vue 等其他文件類型,無法主動處理芯侥,所以需要配置第三方loader


根目錄下新建??.babelrc 文件 再配置 剛才安裝好的第三方loader

{

"presets": ["env","stage-0","react"],

"plugins": ["transform-runtime"]

}



注意:把上面所有的步驟執(zhí)行完后 再重新運行 npm run dev 你的項目可能會報?Module build failed: Error: Plugin/Preset files are not allowed to export objects, only functions.?這個錯誤尿孔,這是因為安裝的babel-loader 版本不兼容導致的〕雉铮可以把你本地的 babel-loader 版本切換為^7.1.2

刪除掉原來的node_modules 包,重新執(zhí)行 npm install? 安裝好后 再執(zhí)行 npm run dev 運行 則無報錯信息

20雏婶、配置 webpack 導入組件的時候省略文件后綴 如圖


21物赶、設(shè)置引入文件或者組件? alias 別名


以上步驟 完成后 基本上react 的框架就搭建完畢了,項目運行成功留晚;


接下來引入一下第三方UI組件

我選擇的是? ant-design 的UI 組件? 官網(wǎng):https://ant.design/docs/react/introduce-cn

執(zhí)行安裝命令??npm install antd --save? ?

注意 :有的時候執(zhí)行上面步驟的會報錯 這是因為npm 版本兼容問題導致的? 如圖報錯


碰到這種情況的話? 就執(zhí)行 cnpm? 操作酵紫。

今天就消化到這里吧,明天再去解決安裝UI 控件 樣式導入的問題错维,

還有一個 CSS 樣式 模塊處理的問題需要回顧一下奖地。基本上 整個react.js 的框架就搭建完畢了赋焕。

哦参歹,還有一個 axios 還沒有處理。



22隆判、處理引入的 css 文件問題

執(zhí)行?npm i style-loader css-loader -D? ??打包處理CSS樣式的第三方loader

配置文件中要增加 相應(yīng)的規(guī)則 如圖


23犬庇、安裝 處理第三方字體文件的loader?

執(zhí)行?

npm i url-loader -D??

npm i file-loader -D

配置文件中增加 對應(yīng)的匹配規(guī)則 如圖


24、執(zhí)行??

cnpm i sass-loader node-sass -D

注意:


其實我上圖的這個報錯 是因為我引入的文件錯誤侨嘀,之前引入了.less的樣式文件臭挽,后來改為.css的文件就不報錯了。但是還是需要安裝對應(yīng)的sass loader 工具咬腕,寫自己的樣式欢峰。



關(guān)于設(shè)置引入樣式哈希值那些配置 配置上去可能會更好 但是沒有必要
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市涨共,隨后出現(xiàn)的幾起案子纽帖,更是在濱河造成了極大的恐慌,老刑警劉巖举反,帶你破解...
    沈念sama閱讀 218,386評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件抛计,死亡現(xiàn)場離奇詭異,居然都是意外死亡照筑,警方通過查閱死者的電腦和手機吹截,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評論 3 394
  • 文/潘曉璐 我一進店門瘦陈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人波俄,你說我怎么就攤上這事晨逝。” “怎么了懦铺?”我有些...
    開封第一講書人閱讀 164,704評論 0 353
  • 文/不壞的土叔 我叫張陵捉貌,是天一觀的道長。 經(jīng)常有香客問我冬念,道長趁窃,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,702評論 1 294
  • 正文 為了忘掉前任急前,我火速辦了婚禮醒陆,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘裆针。我一直安慰自己刨摩,他們只是感情好,可當我...
    茶點故事閱讀 67,716評論 6 392
  • 文/花漫 我一把揭開白布世吨。 她就那樣靜靜地躺著澡刹,像睡著了一般。 火紅的嫁衣襯著肌膚如雪耘婚。 梳的紋絲不亂的頭發(fā)上罢浇,一...
    開封第一講書人閱讀 51,573評論 1 305
  • 那天,我揣著相機與錄音沐祷,去河邊找鬼己莺。 笑死,一個胖子當著我的面吹牛戈轿,可吹牛的內(nèi)容都是我干的凌受。 我是一名探鬼主播,決...
    沈念sama閱讀 40,314評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼思杯,長吁一口氣:“原來是場噩夢啊……” “哼胜蛉!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起色乾,我...
    開封第一講書人閱讀 39,230評論 0 276
  • 序言:老撾萬榮一對情侶失蹤誊册,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后暖璧,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體案怯,經(jīng)...
    沈念sama閱讀 45,680評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,873評論 3 336
  • 正文 我和宋清朗相戀三年澎办,在試婚紗的時候發(fā)現(xiàn)自己被綠了嘲碱。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片金砍。...
    茶點故事閱讀 39,991評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖麦锯,靈堂內(nèi)的尸體忽然破棺而出恕稠,到底是詐尸還是另有隱情,我是刑警寧澤扶欣,帶...
    沈念sama閱讀 35,706評論 5 346
  • 正文 年R本政府宣布鹅巍,位于F島的核電站,受9級特大地震影響料祠,放射性物質(zhì)發(fā)生泄漏骆捧。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,329評論 3 330
  • 文/蒙蒙 一髓绽、第九天 我趴在偏房一處隱蔽的房頂上張望敛苇。 院中可真熱鬧,春花似錦梧宫、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,910評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至巷帝,卻和暖如春忌卤,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背楞泼。 一陣腳步聲響...
    開封第一講書人閱讀 33,038評論 1 270
  • 我被黑心中介騙來泰國打工驰徊, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人堕阔。 一個月前我還...
    沈念sama閱讀 48,158評論 3 370
  • 正文 我出身青樓棍厂,卻偏偏與公主長得像,于是被迫代替她去往敵國和親超陆。 傳聞我的和親對象是個殘疾皇子牺弹,可洞房花燭夜當晚...
    茶點故事閱讀 44,941評論 2 355

推薦閱讀更多精彩內(nèi)容