[JS][Vue]学习记录之简单的组件化

Demo地址

首先准备这样一段js:

<script>
    Vue.component("tp",{
        //template内部只能有一个根标签
        template:'<p>{{name}}:这是我的组件' +
        '<button @click="say">改名字</button>' +
        '</p>',
        data:function () {
            return {
                name:'allen'
            }
        },
        methods:{
          say:function () {
              this.name = "marry";
          }
        }
    })
    new Vue({
       el:'#app1'
    });
    new Vue({
        el:'#app2'
    });
</script>
  • 如果说我们有一些公用的方法或者属性,那么可以通过Vue.component来声明一个组件.
  • 上面代码中的tp,是我们组件的一个别名,它的作用类似于一个html标签.
  • template属性的作用是,添加一段业务需要实现的html语句,有一个注意点是:template内部只能有一个根标签,其他标签必须写在最外层标签内部.
  • 这里的data变成了一个函数,返回的是一个对象,这样我们可以在template中就可以直接使用name属性.
  • 添加方法也是同样的道理.

在html中:

<div id="app1">
    <tp></tp>
</div>

<div id="app2">
    <tp></tp>
</div>
  • 这里我们直接调用tp这个别名,即可展示我们想展示的内容.
    完整代码在顶部的demo里.
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 这篇笔记主要包含 Vue 2 不同于 Vue 1 或者特有的内容,还有我对于 Vue 1.0 印象不深的内容。关于...
    云之外阅读 10,474评论 0 29
  • 下载安装搭建环境 可以选npm安装,或者简单下载一个开发版的vue.js文件 浏览器打开加载有vue的文档时,控制...
    冥冥2017阅读 11,275评论 0 42
  • Vue 实例 属性和方法 每个 Vue 实例都会代理其 data 对象里所有的属性:var data = { a:...
    云之外阅读 6,693评论 0 6
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,084评论 19 139
  • 我曾对她说过:山与水两两相忘,日与月毫无瓜葛,自顾自美丽。现在想想,尽是气话。走过平湖烟雨而后,踏破铁鞋寻寻觅觅。...
    牛棚有阅读 1,175评论 0 0

友情链接更多精彩内容