摘要:因为这里会举一连串的例子,就直接用来作为组件名称了。这是一个组件名称定义的时候有一点需要注意的,就是要使用中划线分词。在组件的方法里面返回数据就可以了。在的组件中间定义的内容,就会被插入到的位置中去。敬请期待下一期,组件通信。
界面写多了,大家应该都会想到一个问题:JS的模块写好以后可以在多个地方重复使用,HTML有没有办法做到呢?Vue给了我们这个能力,使用组件,就可以轻松做到。
最简单的组件初始化Vue实例之前,使用Vue.component方法注册一个简单的template,在HTML中,就可以直接使用。因为这里会举一连串的例子,就直接用one、two、three来作为组件名称了。
Vue.component("one", { template: "
组件名称定义的时候有一点需要注意的,就是要使用中划线分词。比方说,我想新建一个叫list item的组件,组件的名称就需要是list-item,在HTML中使用的时候也一样:
Vue.component("list-item", { template: "
可以。在组件的data方法里面返回数据就可以了。跟Vue实例不一样的是,组件的data对应一个function,在组件中想要用到的数据,需要从这个方法里面返回(返回的数据类型是对象)。
Vue.component("two", { template: "
可以。在组件中使用
item1 item2 item3
Vue.component("three", { template: "
可以。在
这是自定义的内容
Vue.component("three", { template: "
使用具名
this is my awesome website
Vue.component("five", { template: "" + "" })" + // 设置slot的名称为header "" + "" + " " + // 设置slot的名称为content "" + "" + "
图片中选中的这一行,因为在HTML中指定slot的时候使用了div tag所以文字被它包了起来,如果希望直接插入文字,可以使用template这个tag:
既然组件相当于自定义了一个tag,那可以自定义tag的属性吗?this is my awesome website
可以的。使用component的props来设置吧。这里有一点千万要记得,在props里面,是驼峰式分词,但是,在HTML里面使用这个属性的时候,需要用中划线分词,是中!划!线!我最开始使用的时候,两边都习惯性地使用驼峰,结果死活没有效果。最后才发现官方文档有说明……
Vue.component("six", { props: ["userName"], template: "
可以。我们用计算属性做例子吧。把属性设定的文字转换为全大写。
Vue.component("six", { props: ["userName"], // 最后template中使用的是计算属性 template: "
YES!直接用官方的一个双向数据绑定的例子吧:
Vue.component("six", { props: ["userName"], template: "
当然可以。我们直接上例子吧:
Vue.component("game-list", { template: "
这期的基本上把组件的基础都过了一遍,视频里面会附加套用boostrap的css做一个自己的组件的内容。敬请期待下一期,组件通信。
写在最后源码地址:https://github.com/levblanc/v...
视频攻略:小的不才,为求一赞,自制 本期视频攻略 在此。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/81328.html
摘要:在大家的鞭策和鼓励下,这个基础的系列终于完成了。关于更新的频率,因为是我自己一个人在做,文案视频都准备好了才发的话,最快也只能一周一更。最后这几期可以密集地更新,完全是因为公司放假了。不过月份的更新速度真的不能保证,抱歉。 在大家的鞭策和鼓励下,这个基础API的系列终于完成了。所幸是没有真的更到一百期才完结(笑)。最初是因为觉得录视频好玩,才挖的这个坑。也想过中途放弃,关掉专栏,但由于...
摘要:我的目标是使本系列成为关于应用程序性能的完整指南。代码分割就是将应用程序分割成这些延迟加载的块。总结延迟加载是提高应用程序性能并减少其大小的最佳方法之一。在本系列的下一部分中,我将向您展示如何使用和路由来分割应用程序代码。 当移动优先(mobile-first)的方式逐渐成为一种标准,而不确定的网络环境因素应该始终是我们考虑的一点,因此保持让应用程序快速加载变得越来越困难。在本系列文章...
摘要:现在,我们将更深入地研究,并学习用于分割应用程序最实用的模式。本系列文章基于对性能优化过程的学习。路径时才被下载。为了便于理解,文件名称并不是由生成的真实名称。接下来,我们将学习其他部分和单独的组件也能够从主文件分割出来并延迟加载。 在前一篇文章中,我们学习了什么是代码分割,它是如何与 Webpack 一起工作的,以及如何在Vue应用程序中使用延迟加载。现在,我们将更深入地研究,并学习...
摘要:静态模块不能被取消注册也不能延迟注册,并且在初始化后不能更改静态模块的结构不是状态。为此,我们将在路由对应的组件中加载模块,而不是在中导入并注册它。能代码分割模块是一个强大的工具。 在前一部分,我们学习了足够强大的模式,可以显着提高应用程序的性能 - 按每个路由分割代码。虽然按路由分割代码非常有用,但是在用户访问我们的站点后,仍然有很多代码是不需要的。在本系列的这一部分中,我们将重点关...
摘要:看这篇之前,如果没有看过之前的文章,移步拉到文章末尾查看之前的文章。而该组件实例的父实例却并不固定,所以我们将这些在使用时才能确定的参数在组件实例化的时候传入。系列文章地址优化优化总结 看这篇之前,如果没有看过之前的文章,移步拉到文章末尾查看之前的文章。 前言 在上一步,我们实现 extend 方法,用于扩展 Vue 类,而我们知道子组件需要通过 extend 方法来实现,我们从测试例...
阅读 3176·2021-11-18 10:02
阅读 1412·2021-10-12 10:08
阅读 1124·2021-10-11 10:58
阅读 1244·2021-10-11 10:57
阅读 1136·2021-10-08 10:04
阅读 2093·2021-09-29 09:35
阅读 752·2021-09-22 15:44
阅读 1249·2021-09-03 10:30