vue 组件简介


Posted in Javascript onJuly 31, 2020

什么是组件?

web的组件其实就是页面组成的一部分,好比是电脑中的每一个元件(如硬盘、键盘、鼠标),它是一个具有独立的逻辑和功能或界面,同时又能根据规定的接口规则进行相互融合,变成一个完整的应用。

web页面就是由一个个类似这样的部分组成的,比如导航、列表、弹窗、下拉菜单等。页面只不过是这些组件的容器,组件自由组合形成功能完整的界面,当不需要某个组件,或者想要替换某个组件时,可以随时进行替换和删除,而不影响整个应用的运行。

前端组件化的核心思路就是将一个巨大复杂的东西才分成粒度合理的小东西。

使用组件的好处:

  • 提高开发效率
  • 方便重复使用
  • 简化调试步骤
  • 提升整个项目的课维护性
  • 便于协同开发

组件(Component)是 Vue.js 最强大的功能之一。
组件可以扩展 HTML 元素,封装可重用的代码。
在较高层面上,组件是自定义元素, Vue.js 的编译器为它添加特殊功能。
在有些情况下,组件也可以是原生 HTML 元素的形式,以 is 特性扩展。

组件系统让我们可以用独立可复用的小组件来构建大型应用,几乎任意类型的应用的界面都可以抽象为一个组件树:

vue 组件简介

vue.js的组件可以理解为预先定义好行为的ViewModel类。一个组件可以预先定义很多选项。但是最核心的是以下几个:

  • 模板(template)——模板声明了数据和最终展现给用户的DOM之间的映射关系。
  • 初始数据(data)——一个组件的初始数据状态。对于可服用的组件来说,通常是私有的状态。
  • 接受的外部参数(props)——组件之间通过参数来进行数据的传递和共享。参数默认是单向绑定(由上至下),但也可以显式声明为双向绑定。
  • 方法(methods)——对数据的改动操作一般都在组件的方法内进行。可以通过v-on指令将用户输入事件和组件方法进行绑定。
  • 生命周期钩子函数(lifecycle hooks)——一个组件会触发多个生命周期钩子函数,比如created、attached、destroyed等。在这些钩子函数中,我们可以封装一些自定义的逻辑。和传统的MVC相比,这可以理解为Controller的逻辑被分散到了这些钩子函数中。

以上就是深入了解vue 组件的详细内容,更多关于vue 组件的资料请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
jscript之Read an Excel Spreadsheet
Jun 13 Javascript
Jquery常用技巧收集整理篇
Nov 14 Javascript
Firefox中beforeunload事件的实现缺陷浅析
May 03 Javascript
JS自定义功能函数实现动态添加网址参数修改网址参数值
Aug 02 Javascript
javascript中hasOwnProperty() 方法使用指南
Mar 09 Javascript
jQuery选择器源码解读(六):Sizzle选择器匹配逻辑分析
Mar 31 Javascript
jQuery+PHP实现可编辑表格字段内容并实时保存
Oct 09 Javascript
jQueryUI DatePicker 添加时分秒
Jun 04 Javascript
100多个基础常用JS函数和语法集合大全
Feb 16 Javascript
vue keep-alive请求数据的方法示例
May 16 Javascript
angular 内存溢出的问题解决
Jul 12 Javascript
QML实现圆环颜色选择器
Sep 25 Javascript
three.js 制作动态二维码的示例代码
Jul 31 #Javascript
vue+vuex+axios从后台获取数据存入vuex,组件之间共享数据操作
Jul 31 #Javascript
vue抽出组件并传值实例
Jul 31 #Javascript
Vue通过Blob对象实现导出Excel功能示例代码
Jul 31 #Javascript
Vue.js中使用Vuex实现组件数据共享案例
Jul 31 #Javascript
原生JS实现记忆翻牌游戏
Jul 31 #Javascript
js实现跳一跳小游戏
Jul 31 #Javascript
You might like
php删除文件夹及其文件夹下所有文件的函数代码
2013/01/23 PHP
php使用pdo连接mssql server数据库实例
2014/12/25 PHP
PHP htmlspecialchars_decode()函数用法讲解
2019/03/01 PHP
javascript document.compatMode兼容性
2010/02/23 Javascript
JavaScript的类型转换(字符转数字 数字转字符)
2010/08/30 Javascript
js中复制行和删除行的操作实例
2013/06/25 Javascript
js实现瀑布流的一种简单方法实例分享
2013/11/04 Javascript
DIV始终居中的js代码
2014/02/17 Javascript
JavaScript中Function详解
2015/02/27 Javascript
nodejs创建web服务器之hello world程序
2015/08/20 NodeJs
JS实现可展开折叠层的鼠标拖曳效果
2015/10/09 Javascript
jquery实现的伪分页效果代码
2015/10/29 Javascript
JS库中的Particles.js在vue上的运用案例分析
2017/09/13 Javascript
微信小程序实现图片预览功能
2018/01/31 Javascript
Vue+Mock.js模拟登录和表格的增删改查功能
2018/07/26 Javascript
vue-cli+axios实现文件上传下载功能(下载接收后台返回文件流)
2019/05/10 Javascript
微信小程序判断用户是否需要再次授权获取个人信息
2019/07/18 Javascript
用JS实现选项卡
2020/03/23 Javascript
vue-cli3访问public文件夹静态资源报错的解决方式
2020/09/02 Javascript
[03:06]V社市场总监Dota2项目负责人Erik专访:希望更多中国玩家加入DOTA2
2014/07/11 DOTA
[01:02:06]LGD vs Mineski Supermajor 胜者组 BO3 第二场 6.5
2018/06/06 DOTA
简单介绍Python中的struct模块
2015/04/28 Python
Python MySQLdb Linux下安装笔记
2015/05/09 Python
python difflib模块示例讲解
2017/09/13 Python
python中利用h5py模块读取h5文件中的主键方法
2018/06/05 Python
Python3 jupyter notebook 服务器搭建过程
2018/11/30 Python
PYTHON绘制雷达图代码实例
2019/10/15 Python
Python(PyS60)实现简单语音整点报时
2019/11/18 Python
一些关于python 装饰器的个人理解
2020/08/31 Python
解决PyCharm不在run输出运行结果而不是再Console里输出的问题
2020/09/21 Python
使用CSS3的appearance属性改变任何元素的浏览器默认风格
2012/12/24 HTML / CSS
Marriott中国:万豪国际酒店查询预订
2016/09/02 全球购物
香港演唱会订票网站:StubHub香港
2019/10/10 全球购物
教师实习自我鉴定
2013/12/13 职场文书
小学生十佳少年事迹材料
2014/08/20 职场文书
广告公司文案策划岗位职责
2015/04/14 职场文书