国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

react-vite-antd環(huán)境下新建項目

這篇具有很好參考價值的文章主要介紹了react-vite-antd環(huán)境下新建項目。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1. 安裝vite并創(chuàng)建一個react項目

使用 NPM:

npm create vite@latest

使用 Yarn:

 yarn create vite

使用 PNPM:

 pnpm create vite

1. 我使用的 yarn安裝,基本配置項目名字, 框架react ,js

react-vite-antd環(huán)境下新建項目,react,react.js,前端

2. cd vite-react進入項目目錄安裝node包并啟動項目

 yarn add install

加載之后使用啟動命令yarn run dev
react-vite-antd環(huán)境下新建項目,react,react.js,前端
react-vite-antd環(huán)境下新建項目,react,react.js,前端

2. 安裝引入Ant Design

  • 引入依賴(我用的yarn,沒有安裝的也可以使用npm,根據(jù)自己情況選擇)

使用 npm:

 yarn add antd

使用 yarn:

npm install antd --save

安裝完成:
react-vite-antd環(huán)境下新建項目,react,react.js,前端

  • 使用啟動命令:yarn run dev 或者npm run dev

react-vite-antd環(huán)境下新建項目,react,react.js,前端
react-vite-antd環(huán)境下新建項目,react,react.js,前端

  • 清除App.jsx默認內(nèi)容并引入antd

    1. 清空App.css和index.css文件中內(nèi)容

    2. 修改App.jsx中內(nèi)容

import { Button } from 'antd';
function App() {
  return (
    <>
        <Button type="primary">Button</Button>
    </>
  )
}
export default App

3. 頁面顯示:

react-vite-antd環(huán)境下新建項目,react,react.js,前端

3. 引入布局和菜單欄

react-vite-antd環(huán)境下新建項目,react,react.js,前端

1. 引入布局組件

1. 代碼

import React, { useState } from 'react';
import './App.css'
import { Button,Sider,Layout,Header,Space } from 'antd';
const headerStyle = {
  textAlign: 'letft',
  color: '#fff',
  height: 64,
  paddingInline: 10,
  lineHeight: '64px',
  backgroundColor: '#7dbcea',
};
const contentStyle = {
  textAlign: 'center',
  minHeight: 120,
  lineHeight: '120px',
  color: '#fff',
  backgroundColor: '#108ee9',
};
const siderStyle = {
  textAlign: 'center',
  lineHeight: '120px',
  color: '#fff',
  backgroundColor: '#3ba0e9',
};
const App = () => {
  return (
      <Layout>
      <Sider style={siderStyle}>
      </Sider>
      <Layout>
        <Header style={headerStyle}>
        </Header>
        <Content style={contentStyle}>Content</Content>
      
      </Layout>
    </Layout>
  );
};
export default App;

報錯:Uncaught SyntaxError: The requested module '/node_modules/.vite/deps/antd.js?v=d0b75d53' does not provide an export named 'Header' (at App.jsx:3:36)

是因為引入方式不對:修改成就可以了,官網(wǎng)有我沒注意

import { Button, Layout, Space } from 'antd';
const { Header, Sider, Content } = Layout;

運行后發(fā)現(xiàn)多了默認樣式外邊距,修改默認樣式

react-vite-antd環(huán)境下新建項目,react,react.js,前端
使用在App.css中添加下面代碼,就解決了。

/* 更改默認樣式 */
body {
    margin: 0;
}

react-vite-antd環(huán)境下新建項目,react,react.js,前端

2. 引入左側(cè)菜單欄組件

?? 1. 代碼(手寫代碼在最后)

react-vite-antd環(huán)境下新建項目,react,react.js,前端
react-vite-antd環(huán)境下新建項目,react,react.js,前端

?? 2. 運行后,點擊按鈕沒反應(yīng)

react-vite-antd環(huán)境下新建項目,react,react.js,前端

報錯:warning.js:19 Warning: [antd: Menu] inlineCollapsed not control Menu under

是因為位置設(shè)置錯誤,在Sider標簽上添加collapsed={collapsed}就可以了
react-vite-antd環(huán)境下新建項目,react,react.js,前端

?? 重新運行

react-vite-antd環(huán)境下新建項目,react,react.js,前端

react-vite-antd環(huán)境下新建項目,react,react.js,前端

3. 調(diào)整布局樣式

?? 1. 新建src/views/index.jsx。把原來App.jsx文件內(nèi)容轉(zhuǎn)移到新建的src/views/index.jsx中, 對App修改如下。注意引入jsx文件名字要大寫

react-vite-antd環(huán)境下新建項目,react,react.js,前端

?? 2. 運行后樣式

react-vite-antd環(huán)境下新建項目,react,react.js,前端

4. 添加動態(tài)路由設(shè)置

1. 集中react-router對比

* React-Router:

是一個通用的路由庫,適用于不同平臺的 React 應(yīng)用。 提供了一些router的核心API,包括Router, Route,
Switch等,但是它沒有提供 DOM 操作進行跳轉(zhuǎn)的API。

* React-Router-DOM:

而 React Router DOM 是 React Router 的 Web 版本,提供了與瀏覽器環(huán)境相關(guān)的路由組件和功能。 提供了
BrowserRouter,HashRouter , Route, Link等 API,可以直接操作DOM 的事件控制路由。如點擊按鈕。
React Router DOM 是在 React Router 基礎(chǔ)上構(gòu)建的,用于在 Web 應(yīng)用中處理路由。它提供了與瀏覽器 URL
相關(guān)的功能,如基于瀏覽器歷史記錄的導(dǎo)航等。

* Reach Router:

它提供了類似于 React Router 的功能,但具有更簡單的 API 和更好的可訪問性支持。

2. 三種路由模式:HashRouter、BrowserRouter 和 MemoryRouter 都是 React Router 提供的路由組件

  1. HashRouter組件:路徑上有"#",
    它使用 URL 的哈希部分(#)來管理路由。在使用 HashRouter 時,URL 中的哈希部分將被用作路由路徑,不會觸發(fā)瀏覽器的頁面刷新。這種方式適用于靜態(tài)網(wǎng)站或需要在不同環(huán)境中部署的應(yīng)用。

  2. BrowserRouter組件:路徑上沒有"#"
    它使用 HTML5 的 History API 來管理路由。

  3. MemoryRouter:
    它將路由信息存儲在內(nèi)存中,而不是 URL 中。MemoryRouter 適用于在內(nèi)存中管理路由狀態(tài),例如在測試環(huán)境中進行單元測試或在非瀏覽器環(huán)境中使用 React Router。

2. 安裝/使用 React-Router-DOM

文檔:React-Router官方文檔可參考

* 安裝/引用:

  1. 安裝:yarn add react-router-dom
    react-vite-antd環(huán)境下新建項目,react,react.js,前端

  2. 引用:import { BrowserRouter, Route, Link } from 'react-router-dom';

react-vite-antd環(huán)境下新建項目,react,react.js,前端

* 在導(dǎo)航組件中使用。 也可以新建routerAdmin.jsx作為管理router文件

動態(tài)路由完整代碼
?? 1. router文件

react-vite-antd環(huán)境下新建項目,react,react.js,前端

?? 2. App.jsx代碼
import React, { useState } from 'react';

///---引入ui-組件庫
import { Button, Menu, Layout } from 'antd';
import {
  MenuFoldOutlined,
  MenuUnfoldOutlined,
} from '@ant-design/icons';
///---引入路由組件
import { Routes, Route, BrowserRouter } from 'react-router-dom';
import myRouter from './router/index'

const App = () => {
  ///---頁面邏輯
  const { Header, Sider, Content } = Layout;

 // --- 左側(cè)導(dǎo)航欄顯示隱藏邏輯
  const [collapsed, setCollapsed] = useState(false);
  const toggleCollapsed = () => {
    setCollapsed(!collapsed);
  };
  return (
    <BrowserRouter>
      <Layout hasSider={true}>
        <Sider style={{
          textAlign: 'center',
          color: '#333',
          backgroundColor: '#fff',
        }} collapsed={collapsed} >
          <Menu
            mode="inline"
            items={myRouter}
            defaultSelectedKeys={['/purchase']} //默認選中key
            onClick={(e) => {
              console.log(e)
            }}
            style={{ height: '100%', }}
          >
          </Menu>
        </Sider>
        <Layout>
          <Header style={{
            textAlign: 'letft',
            color: '#fff',
            height: 50,
            paddingInline: 10,
            lineHeight: '50px',
            backgroundColor: '#fff',
          }}>
            <Button
              type="primary"
              onClick={toggleCollapsed}
              style={{
                marginBottom: 16,
              }}
            >
              {collapsed ? <MenuUnfoldOutlined /> : <MenuFoldOutlined />}
            </Button>
          </Header>
          <Content style={{
            height: '100vh',
            textAlign: 'center',
            lineHeight: '120px',
            backgroundColor: '#fff',
            borderBottom: '1px solid #333'
          }}>
            <Routes>
              <Route exact path="/" element={<Purchase />} />
              <Route exact path="/purchase" element={<Purchase />} />
              <Route exact path="/inventory" element={<Inventory />} />
              <Route exact path="/roles" element={<RoleList />} />
              <Route exact path="/roles/new" element={<NewRole />} />
              <Route exact path="/settings/theme" element={<ThemeSettings />} />
            </Routes>

          </Content>

        </Layout>
      </Layout>
    </BrowserRouter>
  );
};

const Purchase = () => {
  return <h1>Purchase Page</h1>;
};

const Inventory = () => {
  return <h1>Inventory Page</h1>;
};

const RoleList = () => {
  return <h1>Role List Page</h1>;
};

const NewRole = () => {
  return <h1>New Role Page</h1>;
};

const ThemeSettings = () => {
  return <h1>Theme Settings Page</h1>;
};
export default App;
?? 3.運行后頁面效果

react-vite-antd環(huán)境下新建項目之菜單欄和導(dǎo)航使

開發(fā)中報錯:warning.js:19 Warning: [antd: Menu] children will be removed in next major version. Please use items instead.

Ant Design 的 Menu 組件的 children 屬性將在下一個主要版本中被移除。這意味著在未來的版本中,你應(yīng)該使用 items 屬性來傳遞菜單項,而不是直接使用 Menu.Item 組件作為 Menu 組件的子元素。
如下新版本中使用時不對的:
react-vite-antd環(huán)境下新建項目,react,react.js,前端
修改成如下:

 <Menu
  mode="inline"
  theme="dark"
  items={items}
  onClick={onClick}
  defaultSelectedKeys={['1']}
  defaultOpenKeys={['sub1']}
  >
</Menu>
開發(fā)中報錯:index.jsx:14 Uncaught SyntaxError: The requested module ‘/node_modules/.vite/deps/react-router-dom.js?v=e8aea50f’ does not provide an export named ‘useHistory’
  1. 沒有使用最新版本的“react-router-dom”模塊,npm升級模塊:npm update react-router-dom。
  2. 當如方法不對,應(yīng)該是“import { useHistory } from ‘react-router-dom’”。
  3. 如果以上兩種方式都無法解決問題,可以嘗試刪除“node_modules”文件夾,并重新安裝
  4. 如果上述方法都不能解決問題,你可以使用其他版本的“react-router-dom”模塊,或者嘗試使用其他的路由模塊。
開發(fā)報錯:TypeError: Cannot destructure property ‘basename’ of ‘React.useContext(…)’

是因為link標簽沒有被BrowserRouter標簽包裹

  <BrowserRouter>
///此處寫link邏輯就可以了
</BrowserRouter>
開發(fā)踩坑: 配置好之后路由更新了,頁面沒有更新。

發(fā)現(xiàn)是Route屬性使用錯誤了, <Route exact path=“/” element={} />,我把element使用成component了,改了就可以了,

開發(fā)踩坑: react使用antd中刷新頁面時候 ,布局有閃爍,查找發(fā)現(xiàn)使用Sider標簽加載頁面會有閃爍

是由于 Sider 組件的初始狀態(tài)導(dǎo)致的。Sider 組件默認是收起狀態(tài),當它在頁面加載時展開時,可能會導(dǎo)致頁面內(nèi)容重新布局,從而引起閃爍。官網(wǎng)又給出Layout 標簽屬性hasSider
react-vite-antd環(huán)境下新建項目,react,react.js,前端

react-vite-antd環(huán)境下新建項目,react,react.js,前端文章來源地址http://www.zghlxwxcb.cn/news/detail-657337.html

到了這里,關(guān)于react-vite-antd環(huán)境下新建項目的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • WEB3 創(chuàng)建React前端Dapp環(huán)境并整合solidity項目,融合項目結(jié)構(gòu)便捷前端拿取合約 Abi

    WEB3 創(chuàng)建React前端Dapp環(huán)境并整合solidity項目,融合項目結(jié)構(gòu)便捷前端拿取合約 Abi

    好 各位 經(jīng)過我們上文 WEB3 solidity 帶著大家編寫測試代碼 操作訂單 創(chuàng)建/取消/填充操作 我們自己寫了一個測試訂單業(yè)務(wù)的腳本 沒想到運行的還挺好的 那么 今天開始 我們就可以開始操作我們前端 Dapp 的一個操作了 在整個過程中 確實是沒有我們后端的操作 或者說 我們自己就

    2024年02月07日
    瀏覽(25)
  • 新建vite+vue3+ts項目,以及解決過程中遇到的問題

    新建vite+vue3+ts項目,以及解決過程中遇到的問題

    目錄 一、新建vite+vue3+ts項目 二、解決過程中遇到的問題 解決報錯:Module ‘“xx.vue“‘ has no default export. 解決報錯:Error [ERR_MODULE_NOT_FOUND]: Cannot find package ‘uuid’ imported from xxx的解決 解決報錯:[plugin:vite:css] Preprocessor dependency \\\"less\\\" not found. Did you install it? 此處我使用npm做一下

    2024年02月06日
    瀏覽(78)
  • vite 創(chuàng)建 react 項目

    npm create vite@latest 選擇 react 和 ts 安裝 redux react-redux npm i redux react-redux 安裝 react-router-dom npm i react-router-dom 安裝?reset-css 樣式初始化 npm i reset-css 在 main.tsx 中引入?import \\\"reset-css\\\" 清除瀏覽器默認樣式 安裝 sass npm i?sass 正確的樣式引入順序 樣式初始化即 reset-css --》? ui框架樣式

    2024年01月17日
    瀏覽(21)
  • react native在windows環(huán)境搭建并使用腳手架新建工程

    react native在windows環(huán)境搭建并使用腳手架新建工程

    截止到2024-1-11,使用的主要 軟件的版本 如下: 軟件實體 版本 react-native 0.73.1 react 18.2.0 react-native-cli 2.0.1 Android Studio 2022.3.1 Patch3 Android SDK Android SDK Platform 33 34 Android SDK Android SDK Tools 33 34 Android SDK Intel x86 Atom_64 System Image Android SDK Google APIs Intel x86 Atom System Image node 20.10.0 yarn 1.

    2024年02月02日
    瀏覽(28)
  • 配置Vite+React+TS項目

    執(zhí)行 npm create vite 并填寫項目名、用那個框架。。 路徑別名 在 vite.config.ts 里面配置: 如果開發(fā)環(huán)境是ts,會提示如找不到path或找不到__dirname等,需要先安裝一下node的類型聲明文件: npm i -D @types/node 然后去修改根目錄的 tsconfig.json 文件,不然你使用路徑別名引入組件的時候會

    2024年02月21日
    瀏覽(26)
  • 【從0配置JAVA項目相關(guān)環(huán)境2】node.js + 前端 從配置到運行

    【從0配置JAVA項目相關(guān)環(huán)境2】node.js + 前端 從配置到運行

    實驗室電腦,需要跑一個前后端分離的JAVA項目,于是開始重新配置 全部(數(shù)據(jù)庫+后端+前端)配置環(huán)境+修改代碼 耗時6h,包括遇到各種坑,但總體而言彎路走的不多 如果跟著這篇博客走,理論上會避開我遇到的那些坑hh 對于前端開發(fā)者來說,我們也沒有遺漏。文章將詳細介

    2024年02月04日
    瀏覽(28)
  • vite+react+ts+eslint+prettier構(gòu)建react開發(fā)項目

    目錄 一、構(gòu)建項目 二、安裝eslint和prettier的依賴 三、修改.eslintrc.cjs,創(chuàng)建.prettierrc.cjs 1、.eslintrc.cjs文件配置 2、ESlint忽略文件.eslintignore 3、.prettierrc.cjs文件配置 ?4、prettierrc忽略配置文件.prettierignore

    2024年02月11日
    瀏覽(30)
  • 使用 create-react-app 搭建項目ts+less+antd+redux+router+eslint+prettier+axios

    使用 create-react-app 搭建項目ts+less+antd+redux+router+eslint+prettier+axios

    當前市面上有很多前端框架或者模板、如:umi、dva、antd-design-pro、create-react-app 等一些框架或者模板。 create-react-app 是 react 官方提供的,相對來說比較干凈一些。 此項目是在 create-react-app 的基礎(chǔ)上進行搭架、項目采用 ts 語法 項目整體上會添加上以下功能: 完整項目代碼 傳

    2024年02月03日
    瀏覽(29)
  • 搭建React項目,基于Vite+React+TS+ESLint+Prettier+Husky+Commitlint

    搭建React項目,基于Vite+React+TS+ESLint+Prettier+Husky+Commitlint

    node: 20.10.0 安裝包管理器pnpm 基于Vite創(chuàng)建項目 進入項目目錄安裝依賴 啟動項目 1、初始化ESLint 按下圖結(jié)果進行初始化選擇: 按需選擇完配置后,選擇立即安裝,就可一鍵安裝相關(guān)依賴。安裝成功后 ESLint 幫我們創(chuàng)建了 .eslintrc.cjs 配置文件(cjs 是指 CommonJS 格式)。 2、在項目

    2024年02月04日
    瀏覽(27)
  • (react+ts)vite項目中的路徑別名的配置

    找到vite.config.ts,這里會現(xiàn)實報錯,需要安裝一下 npm i -D @types/node 這個庫的ts聲明配置 雖然配置好了@但是輸入@沒有提示,找到tsconfig.json

    2024年02月08日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包