Vue作用域插槽:用作循環結構的模版


 

一 項目結構

 

 

二 App組件

 

<template>
  <div id="app">
    <!-- 子組件 -->
    <todos :list="list"  v-slot:default="{item}">
      <!-- 插槽內容 -->
      <span v-if="item.isComplete"></span>
      {{item.text}}
    </todos>
  </div>
</template>

<script>
import Todos from "./components/Todos.vue";

export default {
  name: "app",
  data() {
    return {
      list: [
        {
          isComplete: true,
          text: "聯網"
        },
        {
          isComplete: false,
          text: "玩游戲"
        }
      ]
    };
  },
  components: {
    Todos
  }
};
</script>

<style>
</style>

 

三 Todos組件

 

<template>
    <ul>
        <li v-for="(item,index) in list" :key="index">
            <!-- 作用域插槽:用作循環結構的模版 -->
            <slot :item="item"/>
        </li>
    </ul>
</template>
<script>
export default {
  props: {
    list: {
      type: Array,
      default() {
        return [];
      }
    }
  }
};
</script>
<style>
</style>

 

四 運行效果

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM