React18(函數(shù)式開(kāi)發(fā))+Ts入門(mén)開(kāi)發(fā)(一)創(chuàng)建Ts項(xiàng)目使用SCSS篓跛、antdUI庫(kù)

近日突然想用React開(kāi)發(fā)個(gè)小東西膝捞。至于為什么用React就為它的小優(yōu)點(diǎn):速度快:在UI渲染過(guò)程中,React通過(guò)在虛擬DOM中的微操作來(lái)實(shí)現(xiàn)對(duì)實(shí)際DOM的局部更新。

由于好久沒(méi)寫(xiě)了蔬咬,還是打算重新發(fā)點(diǎn)東西鲤遥,鞏固自身的同時(shí)幫助他人。

廢話不多說(shuō)林艘,進(jìn)入主題盖奈,React從入門(mén)到···

今天將第一步,就講下創(chuàng)建項(xiàng)目和SCSS狐援、UI庫(kù)吧钢坦。

我個(gè)人使用的yarn,所以下面的都以yarn示例啥酱。你可以用npm爹凹。
本人NODE版本:16.10.0

// 安裝yarn
npm i -g corepack
yarn - v
1.22.19

一、安裝 create-react-app

create-react-app 腳手架官網(wǎng)
PS:Create React App requires Node 14 or higher.(Create React App 需要 Node 14 或更高版本镶殷。)

npm install -g create-react-app
// -----------------------------------------------
create-react-app -v

Please specify the project directory:
  create-react-app <project-directory>

For example:
  create-react-app my-react-app

Run create-react-app --help to see all options.

二禾酱、創(chuàng)建項(xiàng)目

yarn create react-app react-ts-doc --template typescript
// 經(jīng)過(guò)漫長(zhǎng)的等待
cd .\react-ts-doc\
yarn start
Compiled successfully!

You can now view portable-system in the browser.

  Local:            http://localhost:3000
  On Your Network:  http://192.168.18.156:3000

Note that the development build is not optimized.
To create a production build, use npm run build.

webpack compiled successfully

三、添加開(kāi)發(fā)基礎(chǔ)所需依賴(lài)包(個(gè)人使用scss)

npm install node-sass --save

四绘趋、開(kāi)發(fā)怎么能少的UI庫(kù)呢颤陶,安裝 Ant Design of React

// 1. 安裝Ant Design of React https://2x.ant.design/docs/react/introduce-cn
npm install antd
// 2. 修改 src/App.scss 在文件頂部引入 antd/dist/antd.css
@import '~antd/dist/antd.css';

五、按需引入

上面的例子實(shí)際上加載了全部的 antd 組件的樣式(對(duì)前端性能是個(gè)隱患)陷遮。
此時(shí)我們需要對(duì) create-react-app 的默認(rèn)配置進(jìn)行自定義滓走,這里我們使用 react-app-rewired (一個(gè)對(duì) create-react-app 進(jìn)行自定義配置的社區(qū)解決方案)。

引入 react-app-rewired 并修改 package.json 里的啟動(dòng)配置帽馋。

npm install react-app-rewired --save-dev
npm install babel-plugin-import --save-dev
npm install customize-cra --save-dev
npm i less
npm i -D less-loader
/* package.json */
"scripts": {
-   "start": "react-scripts start",
+   "start": "react-app-rewired start",
-   "build": "react-scripts build",
+   "build": "react-app-rewired build",
-   "test": "react-scripts test --env=jsdom",
+   "test": "react-app-rewired test --env=jsdom",
}

然后在項(xiàng)目根目錄創(chuàng)建一個(gè) config-overrides.js 用于修改默認(rèn)配置搅方。

const {
    override,
    fixBabelImports,
} = require("customize-cra");


module.exports = override(
    fixBabelImports("import", {
        libraryName: "antd", libraryDirectory: "es", style: 'css' // change importing css to less
    }),
);

修改 App.tsx

import React from 'react';
import { Button } from 'antd';
import './App.scss';

function App() {
  return (
    <div className="App">
      <header className="App-header">
         <Button type="primary">進(jìn)入homePage</Button> <br />
         <Button type="primary">進(jìn)入aboutPage</Button>
      </header>
    </div>
  );
}
export default App;

啟動(dòng)yarn start

繼續(xù)學(xué)習(xí)點(diǎn)擊:React18(函數(shù)式開(kāi)發(fā))+Ts入門(mén)開(kāi)發(fā)(二)路由配置以及路由的基礎(chǔ)使用

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市绽族,隨后出現(xiàn)的幾起案子腰懂,更是在濱河造成了極大的恐慌,老刑警劉巖项秉,帶你破解...
    沈念sama閱讀 218,755評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異慷彤,居然都是意外死亡娄蔼,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)底哗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)岁诉,“玉大人,你說(shuō)我怎么就攤上這事跋选√檠ⅲ” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,138評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵前标,是天一觀的道長(zhǎng)坠韩。 經(jīng)常有香客問(wèn)我距潘,道長(zhǎng),這世上最難降的妖魔是什么只搁? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,791評(píng)論 1 295
  • 正文 為了忘掉前任音比,我火速辦了婚禮,結(jié)果婚禮上氢惋,老公的妹妹穿的比我還像新娘洞翩。我一直安慰自己,他們只是感情好焰望,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布骚亿。 她就那樣靜靜地躺著,像睡著了一般熊赖。 火紅的嫁衣襯著肌膚如雪来屠。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,631評(píng)論 1 305
  • 那天秫舌,我揣著相機(jī)與錄音的妖,去河邊找鬼。 笑死足陨,一個(gè)胖子當(dāng)著我的面吹牛嫂粟,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播墨缘,決...
    沈念sama閱讀 40,362評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼星虹,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了镊讼?” 一聲冷哼從身側(cè)響起宽涌,我...
    開(kāi)封第一講書(shū)人閱讀 39,264評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎蝶棋,沒(méi)想到半個(gè)月后卸亮,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,724評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡玩裙,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年兼贸,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片吃溅。...
    茶點(diǎn)故事閱讀 40,040評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡溶诞,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出决侈,到底是詐尸還是另有隱情螺垢,我是刑警寧澤,帶...
    沈念sama閱讀 35,742評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站枉圃,受9級(jí)特大地震影響功茴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜讯蒲,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評(píng)論 3 330
  • 文/蒙蒙 一痊土、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧墨林,春花似錦赁酝、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,944評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至搔耕,卻和暖如春隙袁,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背弃榨。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,060評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工菩收, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人鲸睛。 一個(gè)月前我還...
    沈念sama閱讀 48,247評(píng)論 3 371
  • 正文 我出身青樓娜饵,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親官辈。 傳聞我的和親對(duì)象是個(gè)殘疾皇子箱舞,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評(píng)論 2 355

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