一、单个页面使用组件

1、定义一个组件

  • 在Vue组件中,为了使样式私有化(模块化),不对全局造成污染,可以在style标签上添加scoped属性以表示它的只属于当下的模块,局部有效。 ```javascript /src/components/Item.vue

    1. <a name="lRl6q"></a>
    2. ### 2、app.vue中使用组件
    3. import MovieItem from './components/Item'
    4. <a name="9S0Iy"></a>
    5. ### 3、在components属性中注册
    6. ```javascript
    7. export default {
    8. components:{
    9. MovieItem
    10. }
    11. }

    4、使用

    5、父组件向子组件传值

    1. //1.给子组件定义一个data属性,接收父组件传递过来的参数
    2. <MovieItem :data="item" v-for="item of movies" :key="item.id"></MovieItem>
    3. //2.在子组件的props属性中接收
    4. <script>
    5. export default {
    6. name:"MovieItem",
    7. props:{
    8. data:{
    9. type:Object
    10. }
    11. }
    12. }
    13. </script>
    14. //3.使用数据
    15. <template>
    16. <div>
    17. <img :src="data.images.small" alt="">
    18. <p>{{data.title}}</p>
    19. </div>
    20. </template>

    二、多个页面使用组件

    又称全局引入组件
    在main.ts中
    image.png
    使用:就可以直接在页面使用,不需要单独的引入和注册
    image.png