关于VUE3
vue3.0项目搭建
在我另一篇博客里有详细搭建过程
关于vue3.0项目搭建的详细教程
vue3 怎么引入组件库
引入Vant组件库
vant的vue3官方网址https://vant-contrib.gitee.io/vant/v3/#/zh-CN
首先是安装
Vue 3 项目,安装 Vant 3 : npm i vant@next -S
然后导入组件
项目优化时我们可以只引入需要的组件,以达到减小项目体积的目的
新手建议先在main.js里导入所有组件
import { createApp } from 'vue'
import App from './App.vue'
import Vant from 'vant';
import 'vant/lib/index.css';
const app = createApp(App)
app.use(Vant)
app.mount('#app')
main.js 的更改 ,vue2 跟 vue3 区别
在vue2版本中创建一个 vue 实例是通过 new Vue() 来实现的,到了vue3中则是通过使用createApp这个 API返回一个应用实例,并且可以通过链条的方式继续调用其他的方法
比如这样
createApp(App).use(router).use(Vant).mount('#app')
以上是vue3如何引入组件库
样式初始化
normalize.css地址:https://necolas.github.io/normalize.css/
安装:normalize.css
指令:
npm install normalize.css --save
在mian.js里面引入
import 'normalize.css'
vue3的路由配置以及跳转路由
要安装 vue-router 最新 支持 vue3 router的版本
注意区分: VueCLI3.0和Vue3.0
由于 vue-cli 没有直接支持创建 Vue3.0 项目,所以需要通过插件升级,我们输入指令:
vue add vue-next
在package.json查看版本
"devDependencies":{
"vue-router": "^4.0.8"
}
路由配置
先创建两个页面
先声明俩页面
这是准备当首页面的
<template>
<div>index</div>
</template>
再来一个主体页面
<template>
<div>content</div>
</template>
router配置
import { createRouter, createWebHistory } from 'vue-router'
const routes = [
{
path: '/',
name: 'Home',
component: () => import('../views/pages/index.vue'),
meta: {
title: "主页",
keepAlive: true
}
},
{
path: '/content',
name: 'Home2',
component: () => import('../views/pages/content.vue'),
meta: {
title: '产品选择',
keepAlive: false
}
},
]
const router = createRouter({
history: createWebHistory(),
routes
})
export default router
main.js引入路由
import router from "./router/index"
const app = createApp(App)
app.use(router)
app.mount('#app')
现在进入首页面就是index页面
跳转路由
1 可以继续使用 router-link
2 router.push
2 事件跳转 vue3中路由跳转不能使用 this.$router.push 了
需要导入router
<script>
import router from "@/router";
export default {
setup() {
const goConet = () => {
router.push("/content");
};
return {
goConet,
};
},
};
</script>
现在用 router.push 实现跳转
页面示例如下:
index页面
<template>
<div>
<span @click="goConet">index</span>
</div>
</template>
<script>
import router from "@/router";
export default {
setup() {
const goConet = () => {
router.push("/content");
};
return {
goConet,
};
},
};
</script>
content页面
<template>
<div>content</div>
</template>
致此 应该完成了一个简单的路由跳转