vue-router 的本质是: 第三方包
使用步骤:
//1. 下载 yarn add vue-router@3.5.3
2.main.js 引入vue-reuter
import VueRouter from 'vue-router'
import { find } from 'core-js/core/array'
//3. 注册全局组件(使用插件)
Vue.use(VueRouter)
//4.规则数组
const routes = [
{
path: '/find',
computed: find,
},
{
path: '/my',
computed: My,
},
{
path: '/part',
computed: Part,
},
]
//5.生成路由对象
const router = new VueRouter({
rroutes,
})
Vue.config.productionTip = false
//6.关联到vue实例
new Vue({
router,
render: (h) => h(App),
}).$mount('#app')
App-----
标签
<router-view></router-view>
声明式传值:
方式1:
查询字符串
传: to="/part?参数名=值
接收: $ $route.query.参数名
方式2:
路径传参
App-----
路由规则path上定义 /path/:参数名
main.js-------
{
path: '/part/:username', //username对应 App后面的参数名
component: Part,
},
接收 : $ $route.params.参数名
重新定向:
编程式导航:
语法:
this.$router.push({
path: "路由路径", // 都去 router/index.js定义
name: "路由名"
})
跳转传参:
App----传值
<router-link to="/part?name=小智">朋友-----虾米</router-link>
Part----接收
{{ $route.query.name }}
全局
vue路由 - 嵌套和守卫
场景: 当你要对路由权限判断时
// 语法: router.beforeEach((to, from, next)=>{//路由跳转"之前"先执行这里, 决定是否跳转})
to:要跳转的路由 from:从哪里跳转的路由 next:不调用,页面留在原地, false 阻止路由跳转
vant组件库
1. 下载包 yarn add vant@2.12.44
2. 按需导入 下载包 yarn add babel-plugin-import -D
3. 在babel配置文件里 (babel.config.js)
[[[
module.exports = {
plugins: [
['import', {
libraryName: 'vant',
libraryDirectory: 'es',
style: true
}, 'vant']
]
};
]]]////根基官网上的配置写
4. main.js 按需引入某个组件, Vue.use全局注册 - 某个.vue文件中直接使用vant组件