当前位置: 首页 > news >正文

建设银行 嘉定 网站企业网站建站模板

建设银行 嘉定 网站,企业网站建站模板,开发软件的公司叫什么,无锡朝阳网站建设react入门篇前言一、目标二、项目环境三、实现过程(干货满满💥💥💥)1.创建react项目2.arco design UI库3.路由模块化4. 状态管理zustand5. axios6. 路由守卫前言 提示:这里可以添加本文要记录的大概内容&a…

react入门篇

  • 前言
  • 一、目标
  • 二、项目环境
  • 三、实现过程(干货满满💥💥💥)
    • 1.创建react项目
    • 2.arco design UI库
    • 3.路由模块化
    • 4. 状态管理zustand
    • 5. axios
    • 6. 路由守卫


前言

提示:这里可以添加本文要记录的大概内容:

从 vue2到vue3,从webpack到vite,也是时候进入的react的大家庭了,废话不多说,开整~~~


提示:本篇将实现下面几个目标

一、目标

  • 接入ArcoDesign
  • 路由模块化
  • 接入状态管理:zustand
  • 接入axios
  • 实现路由守卫

二、项目环境

react:v18.2.0
react-router-dom: v6.8.1
arco-design: v2.45.0
zustand: v4.3.3 【为什么不选redux? 哎 就是玩🤪🤪🤪】

三、实现过程(干货满满💥💥💥)

1.创建react项目

yarn create vite react_vite --template react
cd react_vite
yarn install

为了后续使用方便,可以设置alias,具体配置大家可参考vite官网配置

# vite.config.js
import path from 'path'
export default defineConfig({plugins: [react()],resolve: {alias: {'@': path.resolve(__dirname, './src'),'@layouts': path.resolve(__dirname, './src/layouts'),'@assets': path.resolve(__dirname, './src/assets'),'@pages': path.resolve(__dirname, './src/pages'),'@utils': path.resolve(__dirname, './src/utils'),'@stores': path.resolve(__dirname, './src/stores'),'@routers': path.resolve(__dirname, './src/routers'),'@apis': path.resolve(__dirname, './src/apis')}},
})

2.arco design UI库

yarn add @arco-design/web-react

arco design 组件默认支持 tree-shaking, 所以仅需全局注册一下Arco的样式即可, 然后就可以愉快的在页面中使用arco的组件了😃😃😃


# main.jsx...import '@arco-design/web-react/dist/css/arco.css'import { ConfigProvider } from '@arco-design/web-react'import enUS from '@arco-design/web-react/es/locale/en-US'...ReactDOM.createRoot(document.getElementById('root')).render(<React.StrictMode><ConfigProvider locale={enUS}><App /></ConfigProvider></React.StrictMode>
)

3.路由模块化

vue的路由组件不得不承认🐂🍺,替我们这些懒人带来了极大的便利. 习惯了vue-router,再使用react-router-dom感觉哪哪都别扭

# 安装react-router-domyarn add react-router-dom
# main.jsx...import { RouterProvider } from 'react-router-dom'import routes from '@routers/index'ReactDOM.createRoot(document.getElementById('root')).render(<React.StrictMode><ConfigProvider locale={enUS}><RouterProvider router={routes} /></ConfigProvider></React.StrictMode>
)...

新建router.jsx文件,用于统一管理路由,类似于vue的router.js。注意在布局文件layout中加入 标签, 类似于vue-router中的 ,有关react-router更详细的信息可参考 react-router官网

# routers/index.jsx
import { createBrowserRouter } from 'react-router-dom'
import Root from '@layouts/root'
import NotFound from '@/NotFound'
import App from '@pages/home/App'
import About from '@pages/about/About'const routes = createBrowserRouter([{path: '/',element: <Root />,children: [{index: true,element: <App />,meta: {title: '首页'}},{path: 'about',element: <About />,meta: {title: 'about'}}]},{path: '*',element: <NotFound />}
])
export default routes

4. 状态管理zustand

# 安装zustand
yarn add zustand

状态集中管理

# store/demo.jsximport { create } from 'zustand'export const useDemoStore = create((set) => ({bears: 0,addBears: () => set((state) => ({ bears: state.bears + 1 })),removeBears: () => set((state) => ({ bears: state.bears === 0 ? 0 : state.bears - 1 }))
}))

组件中使用

const bears = useDemoStore(state => state.bears)
const { addBears, removeBears } = useDemoStore()

5. axios

这个不在赘述,和大家平常使用的都一致,没什么好讲的

6. 路由守卫

未完,后续补充

http://www.yidumall.com/news/87382.html

相关文章:

  • 技术成果交易网站建设方案全网热搜榜
  • 网站的好坏百度seo推广工具
  • 网站开发 实名认证需要备案吗百度一下你就知道官方
  • 上海做公司网站的公司seo是一种利用搜索引擎
  • 中国人做外贸网站都卖什么软文代写代发
  • 政府网站建设相关文件seo推广是什么
  • 苏州建设工程协会网站萌新seo
  • 免费发做网站全媒体运营师报名费多少钱
  • 快手网页版seo从0到1怎么做
  • 商丘网站公司太原建站seo
  • 网站设计怎么算间距软文写作方法
  • 网站检索功能怎么做呢seo快速排名软件平台
  • 网站优化细节怎么做35个成功的市场营销策划案例
  • 做下载网站用阿里云的什么产品互站网
  • 外贸做平台好还是自己建网站好外贸网站都有哪些
  • 旅游电子商务网站建设的重要性域名收录查询工具
  • wordpress显示网站在线人数字节跳动广告代理商加盟
  • 厦门 网站建设 网站开发线上推广是做什么的
  • 网站建设太金手指六六二五aso优化报价
  • 中国建设银行北京分行网站深圳关键词优化平台
  • 洛阳疫情防控政策最新长沙seo优化哪家好
  • app制作简易网站aso排名优化
  • ps和dw做网站网推什么意思
  • 网上打广告优化大师官方免费
  • 如何做网站优惠券推广东莞最新疫情
  • 写网站代码如何做企业网站
  • 一个专门做视频配音的网站关键词排名顾问
  • 旅游手机网站开发网络营销的成功案例
  • 合川网站建设公司怎么从网上找客户
  • wordpress 关于我们seo整合营销