vue新建項目并配置標準路由過程解析
這篇文章主要介紹了vue新建項目并配置標準路由過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
配置路由所有用到的地方總共四步或者說四處
1.index.js(src--router--index.js)
import Vue from 'vue'
import Router from 'vue-router'
// import HelloWorld from '@/components/HelloWorld'
import Home from '@/components/layout/Home'
import showuser from '@/components/t_dom_owner_user/showuser'
import addusersfromother from '@/components/t_dom_owner_user/addusersfromother'
import showresT from '@/components/t_dom_owner_resT/showresT'
Vue.use(Router)
export default new Router({
// routes: [
// {
// path: '/',
// name: 'Login',
// component: Login
// }
// ]
routes: [
{
path: '/',
name: 'Home',
component: Home ,
children: [
{
path: '/showuser',
name: 'showuser',
component: showuser,
},
{
path: '/showresT',
name: 'showresT',
component: showresT
}]
},
{
path: '/addusersfromother',
name: 'addusersfromother',
component: addusersfromother
},
]
})
2.main.js(src根目錄下)
import Vue from 'vue'
import App from './App.vue'
import ElementUI from 'element-ui';
import router from './router'
import 'element-ui/lib/theme-chalk/index.css';
import '../public/css/main.css'
import store from '../store'
Vue.config.productionTip = false;
Vue.use(ElementUI);
new Vue({
router,
render: h => h(App),
store,
}).$mount('#app')
3.App.vue
<template>
<div id="app">
<!--<img alt="Vue logo" src="./assets/logo.png">-->
<!--<HelloWorld msg="Welcome to Your Vue.js App"/>-->
<!--<home></home>-->
<router-view></router-view>
</div>
</template>
<script>
// import HelloWorld from './components/HelloWorld.vue'
//import Home from "./components/layout/Home";
export default {
name: "app",
components: {
// HelloWorld
//Home
},
};
</script>
<style>
#app {
width: 100%;
height: 100%;
}
</style>
注意App.vue里的<router-view></router-view>必須配置,這意味著項目運行起始的路由界面,
即對應(yīng)index.js里配置的根路徑http://localhost:8080/#,作為app.vue的入口頁面
path: '/', name: 'Home', component: Home ,
4.其它應(yīng)用路由的界面
比如showowner.vue
<template>
<div>
<!-- <el-tree :data="data" @node-click="handleNodeClick"></el-tree> -->
<el-container>
<el-aside width="200px">
<el-tree
:data="data"
node-key="id"
:props="defaultProps"
:expand-on-click-node="false"
:highlight-current="true"
@node-click="handleNodeClick"
>
<span class="custom-tree-node" slot-scope="{ node, data }">
<span>{{ data.data.ownerName}}</span>
<span>
<el-button type="text" size="mini">
<i class="el-icon-edit"></i>
</el-button>
<el-button type="text" size="mini">
<i class="el-icon-plus"></i>
</el-button>
<el-button type="text" size="mini">
<i class="el-icon-delete"></i>
</el-button>
</span>
</span>
</el-tree>
</el-aside>
<el-main>
<el-col :span="24" class="content-wrapper">
<transition name="fade" mode="out-in">
<router-view></router-view>
</transition>
</el-col>
</el-main>
</el-container>
</div>
</template>
其中的嵌入式布局el-main里配置<router-view></router-view>,意味著在本界面showowner.vue觸發(fā)路由將要跳轉(zhuǎn)的位置,即要跳轉(zhuǎn)到el-main處
<el-main>
<el-col :span="24" class="content-wrapper">
<transition name="fade" mode="out-in">
<router-view></router-view>
</transition>
</el-col>
</el-main>
然后是跳轉(zhuǎn)路由寫法,跳轉(zhuǎn)到的界面是pathVariable,界面pathVariable就會顯示在上面配置的el-main處
handleNodeClick(data) {
console.log(data);
//每次點擊結(jié)點都要初始化ownerId
this.domId = data.data.domId;
this.ownerId = data.data.ownerId;
this.varify();
this.$router.push({
path: this.pathVariable,
query: {
domId: this.domId,
ownerId: this.ownerId
}
});
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
VueJs里利用CryptoJs實現(xiàn)加密及解密的方法示例
這篇文章主要介紹了VueJs里利用CryptoJs實現(xiàn)加密及解密的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-04-04
淺談vue中關(guān)于checkbox數(shù)據(jù)綁定v-model指令的個人理解
這篇文章主要介紹了淺談vue中關(guān)于checkbox數(shù)據(jù)綁定v-model指令的個人理解,v-model用于表單的數(shù)據(jù)綁定很常見,下面就來詳細的介紹一下2018-11-11
vue面試created中兩次數(shù)據(jù)修改會觸發(fā)幾次頁面更新詳解
這篇文章主要為大家介紹了vue面試created中兩次數(shù)據(jù)修改會觸發(fā)幾次頁面更新問題解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-12-12

