vite+vue3.0+vue-router+vuex快速搭建项目
vite是类似webpack的前端构建工具,基于浏览器 ES module ,优点:
- 快速的冷启动
- 即时的模块热更新
- 真正的按需编译
首先全局安装create-vite-app
npm install create-vite-app -g
创建项目
cva vue3 // 或者 npx create-vite-app vue3
安装依赖以及启动、打包命令
cd vue3 npm install npm run dev npm run build
引入vue-router4.0
npm install vue-router@4
src目录下新建router/index.js
index.js:
import { createRouter, createWebHistory } from 'vue-router' import HelloWorld from '../components/HelloWorld.vue' const routerHistory = createWebHistory() // createWebHashHistory hash 路由 // createWebHistory history 路由 // createMemoryHistory 带缓存 history 路由 const router = createRouter({ history: routerHistory, routes: [ { path: '/', component: HelloWorld }, ] }) export default router
main.js:
import { createApp } from 'vue' import App from './App.vue' import './index.css' import router from './router' const app = createApp(App) app.use(router) app.mount('#app') // createApp(App).mount('#app')
app.vue:
<template> <router-view></router-view> </template> <script> export default { name: 'App', } </script>
引入vuex4.0
npm install vuex@next --save
src目录下新建store/index.js
index.js:
import { createStore } from 'vuex' const store = createStore({ state: { userInfo: { name:'myName' } }, mutations: { getUserInfo (state, name) { state.userInfo.name = name } }, actions: { asyncGetUserInfo ({ commit }) { setTimeout(() => { commit("getUserInfo", +new Date() + 'action') },2000) } }, getters: { userInfoGetter (state) { return state.userInfo.name } } }) export default store
main.js:
import { createApp } from 'vue' import App from './App.vue' import './index.css' import router from './router' import store from './store' const app = createApp(App) app.use(router) app.use(store) app.mount('#app') // createApp(App).use(router).use(store).mount('#app')
前端交流群,群文件提供大量文档、书籍和资料。期待你的加入!群号:127768464
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!