zoukankan      html  css  js  c++  java
  • vue+vue-router+axios+element-ui构建vue实战项目之八(引用组件)

    在上一节《vue+vue-router+axios+element-ui构建vue实战项目之七(渲染content.vue内容)》中,我们成功渲染出了内容页面。

    不过,我们还漏掉了一个重要的东西,不知道大家还记得《vue+vue-router+axios+element-ui构建vue实战项目之三(认识项目文件)》中的components文件夹吗?

    回顾一下,里面放的都是项目公用的组件,有header.vue和footer.vue两个文件。

    如果我们要在页面中使用header.vue和footer.vue这两个文件怎么办呢?

    下面,我们就来说说这个问题。

    编写header.vue和footer.vue文件

    header.vue文件

    1 <template>
    2   <div style="background: red">
    3     <h3>Vue header</h3>
    4   </div>
    5 </template>

    footer.vue文件

    1 <template>
    2   <div style="background: blue">
    3     <h3>Vue footer</h3>
    4   </div>
    5 </template>

    好了,两个文件的内容都已经编写完成,接下来,就在页面就引用它。

    编写App.vue文件

    我们经常浏览网页都知道,很多网页的header和footer都是一样的,我们如何才能做到编写一个header和footer,就能在多个页面使用呢?

    不多说,直接上代码

     1 <template>
     2   <div id="app">
     3     <myHeader></myHeader>
     4     <router-view></router-view>
     5     <myFooter></myFooter>
     6   </div>
     7 </template>
     8 <script>
     9 import myHeader from './components/header'
    10 import myFooter from './components/footer'
    11 export default {
    12   components: {
    13     myHeader, myFooter
    14   },
    15   name: 'App'
    16 }
    17 </script>
    18 <style lang="scss">
    19   @import "./style/style";
    20 </style>

    大家看到 <myHeader></myHeader> 这个代码的时候肯定很奇怪,这是个什么玩意儿。其实,这是一个自定义组件。我们在其他地方写好了一个组件,然后就可以用这种方式引入进来。

    同样 <myFooter></myFooter> 也是一个组件。不再累述。

    当然,组件的名字是自定义的,你想怎么取就怎么取,但是千万要主要,不要跟原有的html标签重名。

    好,我们再说说这里面的内容。

    components: { myHeader,  myFooter }

    如上,我们先引入了myHeader 和 myFooter 这两个组件的源文件,这里,我们要把引用的组件给申明到 components 里面去。这样,我们就可以在 template 里面使用了。

    上面的代码完成后,保存,打开浏览器,我们就可以看到:

    随便点击一条内容,跳转到内容页面:

    这样,我们就完成了组件的引用和复用,极大的提升了效率。

    当然,我们也可以在不同的页面引用不同的组件,按照同样的方式即可。

    大家下来自行试一下,这里就不再赘述了。

    到本节,我们vue实战项目基本完成了,感谢大家的阅读!

    如果文章中存在错误的地方,麻烦请大家在评论中指正,以免误人子弟,谢谢!
  • 相关阅读:
    javascript语句语义大全(6)
    javascript语句语义大全(5)
    javascript语句语义大全(4)
    javascript语句语义大全(3)
    javascript语句语义大全(2)
    javascript语句语义大全(1)
    javascript基础知识(1)
    模版引擎Handlebars语法(1)
    一个完整的项目中,需要的基本gulp
    HTML5新特性总览
  • 原文地址:https://www.cnblogs.com/zhaoyongblog/p/10485059.html
Copyright © 2011-2022 走看看