首先安装 npm install -g vue-cli 来进行vue框架的快速搭建,安装好后在任意目录执行
vue init webpack myproject
就会生成一个vue项目,首先加入一个用户组件,在components下新建Customers.vue:
<template>
<div class="customers">
customers
</div>
</template>
<script>
export default {
name: 'customers',
data () {
return {
}
}
}
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
</style>
同样在components目录下新建About.vue:
<template>
<div class="about container" >
about
</div>
</template>
<script>
export default {
name: 'about',
data () {
return {
}
}
}
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
</style>
在index.html中引入bootstrap,index.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>customers</title>
<link rel="stylesheet" type="text/css" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css
">
</head>
<body>
<div id="app"></div>
<!-- built files will be auto injected -->
<script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js
"></script>
</body>
</html>
然后通过main.js来实现路由逻辑,main.js代码如下:
// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import VueRouter from 'vue-router'
import Customers from './components/Customers'
import About from './components/About'
Vue.config.productionTip = false
Vue.use(VueRouter)
//设置路由
const router = new VueRouter({
mode:"history",
base:__dirname,
routes:[
{path:"/",component:Customers},
{path:"/about",component:About}
]
})
/* eslint-disable no-new */
new Vue({
router,
template:`
<div id="app">
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">用户管理系统</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<li ><router-link to="/">主页</router-link></li>
<li ><router-link to="/about">关于我们</router-link></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</nav>
<router-view></router-view>
</div>
`
}).$mount("#app")
这里的main.js是加载项目的入口文件,$mount(“#app”)是将该实例挂载到index.html中的
的标签下面,用它的模版去完全替代index.html中的 。到这里就可以直接启动了,http://localhost:8080/