引言Vue.js 是一个渐进式 JavaScript 框架,它以简单、高效、灵活著称,深受前端开发者的喜爱。Vue Router 是 Vue.js 的官方路由管理器,用于构建单页应用(SPA)。本文将...
Vue.js 是一个渐进式 JavaScript 框架,它以简单、高效、灵活著称,深受前端开发者的喜爱。Vue Router 是 Vue.js 的官方路由管理器,用于构建单页应用(SPA)。本文将带您从入门到实战,全面解析 Vue.js 与 Vue Router 的使用。
Vue.js 是一个用于构建用户界面的渐进式 JavaScript 框架。它允许开发者采用简洁的模板语法,将数据绑定到 DOM 上,实现视图与数据同步。
npm install vue@2.6.14 --save # 安装 Vue.js 2.x 版本
npm install vue@next --save # 安装 Vue.js 3.x 版本{{ }} 进行数据绑定。v-bind(绑定属性)、v-model(双向数据绑定)等。Vue Router 是 Vue.js 的官方路由管理器,用于构建单页应用(SPA)。它允许开发者通过路由来管理页面的切换。
npm install vue-router@4.0.12 --save # 安装 Vue Router 4.x 版本vue create my-project
cd my-project
npm install vue-router@4.0.12 --save在 src/router/index.js 文件中配置路由:
import Vue from 'vue';
import Router from 'vue-router';
import Home from '../views/Home.vue';
import About from '../views/About.vue';
Vue.use(Router);
export default new Router({ routes: [ { path: '/', name: 'home', component: Home }, { path: '/about', name: 'about', component: About } ]
});在 main.js 文件中引入路由配置:
import Vue from 'vue';
import App from './App.vue';
import router from './router';
new Vue({ router, render: h => h(App)
}).$mount('#app');在 App.vue 中使用路由组件:
<template> <div id="app"> <router-link to="/">Home</router-link> <router-link to="/about">About</router-link> <router-view></router-view> </div>
</template>路由导航守卫用于在路由跳转过程中执行一些操作,如权限验证、页面加载等。
router.beforeEach((to, from, next) => { // 权限验证 if (to.path === '/admin' && !isLogin) { next('/login'); } else { next(); }
});{ path: '/user', component: User, children: [ { path: 'profile', name: 'user-profile', component: UserProfile }, { path: 'posts', name: 'user-posts', component: UserPosts } ]
}{ path: '/user/:id', component: User
}this.$route.params.idthis.$route.query.name本文从 Vue.js 与 Vue Router 的入门到实战,全面解析了这两款优秀的前端框架。希望读者通过本文的学习,能够轻松掌握 Vue.js 与 Vue Router,为构建现代 Web 应用打下坚实的基础。