Vue——自定义内容分发


马上就要进入真正的vue的学习啦!!!!

DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Titletitle>
head>
<body>

<div id="vue">
    <todo>
        <todo-title slot="todo-title" title="title" :name="title">todo-title>
        <todo-items slot="todo-items" v-for="(item,index) in todoItems"
                    :item="item" :index="index" v-on:remove="removeItems(index)" :key="index">todo-items>
    todo>
div>

<script src="https://cdn.jsdelivr.net/npm/vue@2.5.21/dist/vue.min.js">script>
<script type="text/javascript">
    Vue.component('todo',{
        template:'
\ \
    \ \
\
' }); Vue.component('todo-title',{ props:['name'], template:'
{{title}}
' }); Vue.component('todo-items',{ props:['item','index'], //只能绑定当前组件的方法 template:"
  • {{index}}-----{{item}}
  • ", methods:{ remove: function (index){ //this.$emit 自定义事件分发 this.$emit('remove',index); } } }); var vm = new Vue({ el:"#vue", data:{ title: "课程", todoItems:['数学','语文','英语'] }, methods:{ removeItems:function (index){ console.log("删除了"+this.todoItems[index]+"ok"); this.todoItems.splice(index,1); //一次删除一个元素 } } }); script> body> html>
    vue