vue新建项目之标准路由配置

配置路由所有用到的地方总共四步或者说四处

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>必须配置,这意味着项目运行起始的路由界面,

即对应index.js里配置的根路径http://localhost:8080/#,作为app.vue的入口页面

path: ‘/‘,
name: ‘Home‘,
component: Home ,

4.其它应用路由的界面

比如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触发路由将要跳转的位置,即要跳转到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>

然后是跳转路由写法,跳转到的界面是pathVariable,界面pathVariable就会显示在上面配置的el-main处

handleNodeClick(data) {
      console.log(data);
      //每次点击结点都要初始化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
        }
      });

    }

原文地址:https://www.cnblogs.com/yanl55555/p/12000587.html

时间: 2024-08-28 19:39:18

vue新建项目之标准路由配置的相关文章

vue新建项目

一直都被如何用vue.js新建一个项目的问题困扰着,经过好久的实践,终于搞清楚如何用vue新建项目了: 1.官网对于vue-cli介绍: Vue.js provides an official CLI for quickly scaffolding ambitious Single Page Applications. It provides batteries-included build setups for a modern frontend workflow. It takes only

vue创建项目初始化及基本配置

目录 创建新项目初始化 vue的ajax插件: axios 1)安装插件(一定要在项目目录下): 2)在main.js中配置: 3)在任何一个组件的逻辑中发送ajax请求: CORS跨域问题(同源策略) Vue配置ElementUI Vue配置bs环境 安装插件 创建新项目初始化 node_modules不需要动 public不动 src中在assets中创建css js 和img文件夹 router文件夹中的index.js只保留一个home的路由配置 App.vue只留五行代码即可 Home

VS2017新建项目的模板之配置

也不知道之前装VS2017的时候,做了什么操作,新建一个WinForm项目,自动记住了我当时新建的窗体的大小816*639(默认的300*300),现在每次新建窗体都这个大小,忍了一段时间,实在忍无可忍了,网上找解决方案,一顿猛搜索,上穷百度下谷歌,两处茫茫皆不见.得了,自己想辙呗! 首先判断信息藏在注册表,可找了半天连个影都没见着,再想想也可能在用户配置目录,于是删除了AppData\Local\Microsoft\VisualStudio相关的所有目录,觉得应该可以了,没想到还不是,疯了!老

Vue新建项目目录

前期准备 第一步:百度搜索Node.js  下载node,进行傻瓜式安装 第二步:使用cmd(控制命令行程序),检查是否安装成功 输入:node -v npm -v 使用淘宝NPM镜像 大家都知道国内直接使用npm 的官方镜像是非常慢的,这里推荐使用淘宝 NPM 镜像. $  npm  install  -g  cnpm  --registry=https://registry.npm.taobao.org 这样就可以使用cnpm 命令来安装模块了 第三步:安装vue-cli cnpm inst

关于webpack 打包vue项目的2中路由配置方式

首先,2种都是引入配置好的router里面的index.js import Vue from 'vue'import Router from 'vue-router'import login from '@/components/login' Vue.use(Router) 1.第一种写法export default new Router({  routes: [    {      path: '/login',      component: login    }   ]}) 2.第二种写法

C# MVC框架项目下的路由配置-RouteConfig

1. 设置备份全局路径下的路由 目的,我们在网站中域名后面输入参数,可以跳转到相应的controller,例如:www.innovsys.cn/dd.直后端直接跳转到controller,获取dd参数. 第一步,在RouteConfig文件中,添加 routes.MapRoute( name: "M", url: "{id}", defaults: new {controller="M", action = "Index",

vue新建项目之饿了么组件标准配置

main.js 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.product

零开始构建Angular项目----之路由配置 和 nav导航条

效果 接着上次 零开始构建Angular项目继续扯路由配置 和 nav导航条 1.增加about页面 about.component.html <!-- Docs nav ================================================== --> <div class="row"> <!-- <div class="col-md-3 "> <div class="bc-sid

vue 路由配置

11.2 新增问题: 函数触发路由,采用两种方式.第一种router-link.第二种this.$router.push({path:'/address'}) 两种方式都可以跳转,但是第二种方式,触发后,原先绑定的CSS样式,无法通过 false 来取消. 然后吃完饭回来,我就发现我傻了,我是通过点击来触发事件,点击后,页面都跑了,我当然看不到样式改变啊. 所以老老实实用 router-link吧. <router-link> 比起写死的 <a href="..."&