• vue子路由设置、全局组件、局部组件的原生写法


    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
        <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
        <script src="https://cdn.bootcss.com/vue-router/3.0.6/vue-router.js"></script>
    </head>
    <style>
        .view{
            width:300px;
            height:300px;
            background:purple;
        }
        .childView{
            width:100px;
            height:100px;
            background:green;
        }
        .aa{
            width:100px;
            height:70px;
            background:yellow;
        }
        .bb{
            width:100%;
            height:50px;
            background:cyan;
        }
    </style>
    <body>
    <div id="app">
        <com1></com1>
        <com2></com2>
        <div class="view">
            <router-link to="/com2">com2</router-link>
            <router-view></router-view>
        </div>
    </div>
    
    
    <template id="childcom">
            <div>
                我是子路由
            </div>
    </template>
    <template id="another">
            <div>
                <router-link to="/com2/com4">我是另一个路由</router-link>
                <div class="bb">
                    <router-view></router-view>
                </div>
                
            </div>
    </template>
    <script>
    var objarr=[
            {id:0,text:""},
            {id:1,text:""},
            {id:2,text:""},
            {id:3,text:""},
            {id:4,text:""},
            {id:5,text:""}
        ]
    
    
        
    var component1={//局部组件
        data(){
            return{
                aaa:objarr
            }
        },
        template:`<div>
            局部组件
            <div v-for="(item,index) in aaa">
                <span>{{ item.id }}</span>
                <span>{{ item.text }}</span>
            </div>
        </div>`
    }
    
    
    
    
    //声明个全局组件
    Vue.component("com2",{
        template:`<div>
                全局组件
                <div v-for="(item,index) in bbb" :key="index">
                    <span>{{ item.id }}</span>
                    <span>{{ item.text }}</span>
                </div>
            </div>`,
        data(){
            return{
                bbb:objarr
            }
        },
    })
    
    // router
    const routes = [
        {   path: '/', component: component1 },
        {   path: '/com2', 
            component:{template:'#another'},
            children:[
                {
                    path:'com4',
                    component:{template:"#childcom"}
                }
            ] 
        }
    ]
    const router = new VueRouter({
      routes // (缩写) 相当于 routes: routes
    })
    
    new Vue({
        el:"#app",
        components:{
            com1:component1
        },
        router
    })
    </script>
    </body>
    </html>
  • 相关阅读:
    mockm remote 不能正常使用的解决方案
    uviewui 的 bug 当 url 的 query 参数中有 http://127.0.0.1/ 并且省略请求前缀的时候, 就会导致请求无法发送出去
    检查 nodmeon 是否可以修改文件后重启应用
    mocha 如何延迟指定时间后再运行所有用例
    使用 babel 编译 js 为 es5 支持 ie
    git 摘取提交
    Makefile学习笔记
    使用 Service Worker 缓解网站 DDOS 攻击
    如何热更新长缓存的 HTTP 资源
    网站图片无缝兼容 WebP/AVIF
  • 原文地址:https://www.cnblogs.com/fqh123/p/10803956.html
Copyright © 2020-2023  润新知