升级版todoList之组件拆分

组件化是框架的一大特色,Vue也不例外,组价化带来很高的复用性,直接提高了工作效率。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>todoList的组件拆分</title>
  <!-- 在head里面引入,避免闪屏问题 -->
  <script src="./vue.js"></script>
</head>
<body>
  <div id="root">
   <div>
     <!-- v-model双向数据绑定 -->
     <input v-model="inputValue"/>
     <!-- 绑定点击事件 -->
     <button @click="handleSubmit">提交</button>
   </div>
   <ul>
     <!-- 使用组件来实现,同时绑定属性:content="item" 传参item用以达到动态展示效果 -->
     <todo-item
      v-for="(item, index) of list"
      :key="index"
      :content="item"
     ></todo-item>
   </ul>
  </div>
    
  <script>
    // 定义全局组件
    Vue.component("todo-item",{
      // 传参后不能直接使用,必须接收一下才可以使用
      props:['content'],
      template: '<li>{{content}}<li>',
    })
    // 定义局部组件,局部组件需要使用components声明才能使用
    // var TodoItem = {
    //   template:"<li>item</li>"
    // }

    new Vue({
      el:"#root",
      // 调用局部组件需要在这里做一个组件的声明
      // components:{
      //   "todo-item":TodoItem
      // },
     data:{
       inputValue:'',
       list:[],
     },
    //  添加事件
     methods:{
       handleSubmit: function(){
        // 将inputValue push到数组中
         this.list.push(this.inputValue),
        // 清空输入框
         this.inputValue=''
       }
     }
    })
  </script>
</body>
</html>
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 13,819评论 2 59
  • 受985高材生被骗入传销后死亡事件的影响,“传销”这个词再次激起公众、媒体的高度关注。而我一直都对传销很好奇。记得...
    知识海洋里的浅水鱼阅读 2,628评论 0 4
  • X国的国王,天生阳痿病,最大的愿望就是硬起来一次,做一次堂堂正正的男人。 国王后宫三千佳丽,轮翻挑逗,国王的根还是...
    你的嘴尝起来好贱阅读 844评论 4 6
  • 遇上南坡村,纯属一个意外,我和媳妇戏言:这篇游记,像是捡来的。 原本想到周村后河边上去买几斤鸭蛋,顺道考虑买只鸭回...
    水蜗牛_d627阅读 327评论 0 1
  • 大的苦难,与我无关 大的幸福,与我无关 我不想听见他们的声音 像来自地狱的召唤 何苦在人间营造悲苦的氛围 看看炊烟...
    翔于阅读 257评论 0 3

友情链接更多精彩内容