浅学Element-ui路由VueRoute

举报
QGS 发表于 2023/11/27 22:21:15 2023/11/27
【摘要】 浅学Element-ui路由VueRoute

后端WebAPI准备

https://router.vuejs.org/zh/guide/

https://v3.router.vuejs.org/zh/installation.html


<template>
    <el-table
      :data="tableData"
      style="width: 100%"
      :row-class-name="tableRowClassName">
      <!-- <el-table-column
        prop="date"
        label="日期"
        width="180">
      </el-table-column> -->
      <el-table-column
        prop="id"
        label="ID"
        width="180">
      </el-table-column>
      <el-table-column
        prop="address"
        label="地址">
      </el-table-column>
    </el-table>
  </template>
  
  <style>
    .el-table .warning-row {
      background: oldlace;
    }
  
    .el-table .success-row {
      background: #f0f9eb;
    }
  </style>
  
  <script>
    export default {
      methods: {
        tableRowClassName({row, rowIndex}) {
          if (rowIndex === 1) {
            return 'warning-row';
          } else if (rowIndex === 3) {
            return 'success-row';
          }
          return '';
        }
      },
      created:function(){
      this.$add.get("/test").then((response)=>{
      this.tableData = response.data;
    })
  },
  data() {
    return {
      tableData: []
    }
  },
    }
  </script>

 

Vue Router安装与使用vue路由wue- router是官方的路由插件,能够轻松的管理SPA项目中组件的切换

Vue的单页面应用是基于路由和组件的,路由用于设定访问路径,并将路径和组件映射起来。

Vue-router目前有3x的版本和4x的版本,

Vue-router3x只能结合vue2进行使用

安装npm install vue-router@3

Vue-router4x只能结合Vue3进行使用

安装npm install vue-router@4

import VueRouter from 'vue-router'
import Vue from 'vue'
import helloworld from '@/components/HelloWorld.vue'
import data from '@/components/demo.vue'

//VueRouter设置为Vue的插件
Vue.use(VueRouter)

new VueRouter({
    //指定对应属性与组件关系
    routes: [
        { path: '/helloworld', component: helloworld},
        { path: '/data', component: data}
    ]
})

export default router


全局引入


启动

npm run serve

 

子路由

bn.vue

<template>
    <el-row>
  <el-button>默认按钮</el-button>
  <el-button type="primary">主要按钮</el-button>
  <el-button type="success">成功按钮</el-button>
  <el-button type="info">信息按钮</el-button>
  <el-button type="warning">警告按钮</el-button>
  <el-button type="danger">危险按钮</el-button>
</el-row>
</template>

import VueRouter from 'vue-router'
import Vue from 'vue'
import helloworld from '../components/HelloWorld.vue'
import data from '../components/demo.vue'
import bn1 from '../components/bn.vue'
import bn2 from '../components/bn.vue'

//VueRouter设置为Vue的插件
Vue.use(VueRouter)

const router = new VueRouter({
    //指定对应属性与组件关系
    routes: [
            { path: '/', redirect : "/data"},//重定向
            { path: '/helloworld', component: helloworld},
            { path: '/data', component: data},

            //通过children属性,嵌套子路由
            { path: '/data', component : data,
            children: [
                    {
                      path: 'bn1',
                      component: bn1
                    },
                  ]
            },
            //子路由,方式二
            { path: '/data/bn2', component: bn2},
    ]
})

export default router

子路由方式一

子路由方式二



【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。