首页 > 语言 > JavaScript > 正文

Vue中的组件及路由使用实例代码详解

2024-05-06 15:39:12
字体:
来源:转载
供稿:网友

1.组件是什么

       组件系统是 Vue 的一个重要概念,因为它是一种抽象,允许我们使用小型、独立和通常可复用的组件构建大型应用。通常一个应用会以一棵嵌套的组件树的形式来组织;

1.1组件的声明及使用

  全局组件

<body>  <div id="app">    <!-- 用全局组件的名称作为HTML的标签 -->    <myzujian></myzujian>  </div>  </body><script>  //设置全局组件   Vue.component("myzujian",{     template:"<h2>我是全局组件</h2>"   });   var app=new Vue({     el:"#app",   });</script>

  局部组件

<body>  <div id="app">    <!-- 用局部组件的名称作为HTML的标签 -->    <zu-jian></zu-jian>  </div>  </body><script>   var app=new Vue({     el:"#app",     components:{       zuJian:{         template:"<h1>我是局部组件</h1>",        }     }   });</script>

1.2组件使用注意事项

   组件名如果是驼峰法命名,使用组件时要将大写字母改为小写,并且在前面加上 - 组件中的tamplate属性必须有一个唯一的根元素,否则会报错

1.3组件中数据及方法

<body>  <div id="app">    <mytemp></mytemp>  </div></body><script>  var app=new Vue({    el:"#app",    data:{},    components:{      mytemp:{        data(){          return {            msg:"123456789",          }        },        methods: {          cli(){            alert(this.msg);          }        },        template:'<h1 @click="cli">you{{msg}} very good</h1>',      }    }  });</script>

1.4父级组件传值

<body>  <div id="app">    <my :cc="msg"></my>  </div></body><script>  var app = new Vue({    el:'#app',    data:{msg:'没事干'},    components:{      my:{        props:['cc'],        template:"<s>{{cc}}</s>"      }    }  })</script>

2.路由的使用

   Vue在使用路由插件Vue-router,要提前引入。

<body>  <div id="app">    <ul>      <li> <router-link to="/login">登录</router-link> </li>      <li> <router-link to="/reg">注册</router-link> </li>    </ul>    <router-view></router-view>  </div></body><script>  // 获取路由对象  var ro = new VueRouter({    // 定义路由规则    routes:[      // 具体匹配规则      // {path:匹配地址栏路由变化,component:要展示组件}      {path:'/reg',component:{template:"<s>我是注册</s>"}},      {path:'/login',component:{template:"<s>我是登录</s>"}},    ]  })  var app = new Vue({    el: '#app',    data: {},    router:ro  })</script>            
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选