千家信息网

Vue.js基础知识有哪些

发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,本篇内容主要讲解"Vue.js基础知识有哪些",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Vue.js基础知识有哪些"吧!一、遇见Vue.js1.MVP,
千家信息网最后更新 2024年11月11日Vue.js基础知识有哪些

本篇内容主要讲解"Vue.js基础知识有哪些",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Vue.js基础知识有哪些"吧!

一、遇见Vue.js

1.MVP,从MVC演化而来,Controller/Presenter负责逻辑的处理,完全把View和Model进行了分享,主要的程序逻辑在Presenter里实现,与具体的View是没有直接关联的,而是通过定义好的接口进行交互,从而使得在变更View的时候可以保持Presenter不变

2.MVVM,只是把MVC的Controller和MVP的Presenter改成了ViewModel,View的变化会自动更新到ViewModel,ViewModel的变化也会自动同步到View上显示

二、数据绑定

三、指令

1.指令(Directive)是特殊的带有前缀v-的特性,指令的值限定为绑定表达式,指令的职责就是当其表达式的值改变时把某些特殊的行为应用到DOM上

2.v-if有更高的切换消耗,而v-show有更高的初始渲染消耗。因此,如果需要频繁地切换,使用v-show较好;如果在运行时条件不大可能改变,则用v-if较好

3.v-model指令参数:number,将用户的输入自动转换为Number类型;lazy,将数据改到在change事件中发生;debounce,设置一个最小延迟,在每次敲击之后延时同步输入框的值与数据

4.应该尽量避免直接设置数据绑定的数组元素,因为这些变化 不会被Vue.js检测到,因而也不会更新视图渲染

5.使用v-for,将得到一个特殊的作用域,类似于AngularJS的隔离作用域,需要明确指定props属性传递数据,否则在组件 内将获取不到数据

四、计算属性

  1. 计算属性就是当其依赖属性的值发生变化 时,这个属性的值会自动更新,与之相关的DOM部分也会同步自动更新


五、表单控件绑定

1.多个复选框放入一个数组中

2.当被选中的option有value属性时,vm.selected为对应option的value值;否则为对应option的text值

六、过滤器

1.过滤器,本质上都是函数,作用在于用户输入数据后,它能够进行处理,并返回一个数据结果;过滤器函数将始终以表达 式的值作为第一个参数,带引号的参数会被当作字符串处理,而不带引号的参数会被当作 数据属性名来处理

2.内置过滤器:

字母操作:capitalize、uppercase、lowercase

json过滤器:son

限制:limitBy、filterBy、orderBy处理并返回过滤后的数组

currency过滤器:将数字值转换为货币形式输出

debounce过滤器:延迟处理器一定的时间执行

七、Class与Style绑定

1.可以传给v-bind:class一个对象,以动态地切换class,v-bind:class指令可以与普通的class特性共存

2.v-bind:style绑定内联css

八、过滤

1.transition特性可以与这些资源一起搭配使用:v-if、v-show、v-for、动态组件

2.内置Class类名:.xxx-transition、.xxx-enter、.xxx-leave

3.只使用js钩子时,为js过渡显式声明css:false,Vue.js将跳过CSS检测,这样也会防止css规则对过渡的干扰

九、Method

1.所有的Vue.js事件处理方法和表达式都严格绑定在当前视图的ViewModel上

2.需要注意:

  • methods中定义的方法内的this始终指向创建的Vue实例

  • 与事件绑定的方法支持参数event即原生DOM事件的传入

  • 方法在普通元素上时,只能监听原生DOM事件;用在自定义元素组件上时,也可以监听子组件触发的自定义事件

3.四个事件修饰符:.prevent、.stop、.capture、.self

十、Vue实例方法

1.组件树访问:$parent、$root、$children、$refs

2.DOM访问:$el、$els

3.数据访问:$data、$options

4.实例方法:$appendTo()、$before()、$after()、$remove()、$nextTick()

5.实例event方法:$on()、$once()、$emit()、$dispatch()、$broadcast()、$off()

十一、组件

1.Vue.js的组件可以理解为预先定义好行为的ViewModel类,一个组件可以预定义很多选项,但最核心的:

模板(template)、初始数据(data)、接受的外部参数(props)、方法(methods)、生命周期钩子函数(lifecycle hooks)

2.props是组件数据的一个字段,期望从父组件传下来数据,组件的作用域是孤立的,意味着不能并且不应该在子组件的模板内直接引用父组件的数据,所以子组件需要显式地用props选项来获取父组件的数据

3.组件通信:this.$parent、this.$children、this.$root,不过子组件应当避免直接依赖父组件的数据,尽量显式地使用props传递数据,在子组件中修改父组件的状态是非常糟糕的做法,会导致父子紧密地耦合,很难理解父组件的状态

4.solt作为原始内容的插槽,父组件的内容将被抛弃,除非子组件模板包含,标签的内容视为回退内容,回退内容在子组件的作用域内编译,当宿主元素为空并且没有内容插入时显示这个回退内容

5.混合以一种灵活的方式为组件提供分布利用的功能,混合对象可以包含做任意的组件选项,当组件使用了混合对象时,混合对象的所有选项将被"混入"组件自己的选项中

6.生命周期:init、created、beforeCompile、compiled、ready、attached、detached、beforeDestory、destroyed

十二、表单校验

1.vue-validator

2.v-validate指令语法:v-validate[:field]="array literal | object literal | binding"

3.内置验证规则:required、pattern、minlength、maxlength、min、max

4.v-validate所在元素,可以监听的事件:valid、invalid、touched、dirty、modified

十三、与服务端通信

1.vue-resource

2.vue-async-data,是一个异步加载数据状态指示的插件,本身并不支持异步获取服务端数据的功能,仅仅指示数据目前是处于加载 状态还是已经加载完毕

十四、路由与视图

1.vue-router

2.vue-router钩子函数:canReuse、canActivate、activate、data、canDeactivate、deactivate

十五、vue-cli

1.快速生成一个基于Webpack构建的项目:vue init webpack my-project

2.支持的命令:vue init ;vue list;

十六、测试开发与调试

1.ESLint

2.工具包:eslint-loader、eslint-friendly-formatter、eslint-config-standard、eslint-plugin-html

3.开发工具:Vue Syntax Highlight、Snippets(sublime)、VUe.js(WebStorm)、Vue(Visual Studio Code)

4.调试工具:Chrome--Vue.js devtools

十七、Scrat+Vue.js的化学反应

1.前端工程化:开发规范、模块化、组件化、组件库、性能优化、项目部署、开发流程、工程工具

2.Scrat是UC团队在百度的FIS基础上二次开发的webapp模块化开发框架,最大的特色是模块化开发和模块生态,理念是像搭积木一样开发和维护系统,通过组装模块得到一个完整的系统

十八、Vue.js2.0

1.Virtual DOM:通过JS对象表示的树结构来构建一棵真正的DOM树,当数据状态发生变化时可以直接修改这个JS对象,接着对比修改后的JS对象,记录下需要对页面做的DOM操作,然后将其应用到真正的DOM树,实现视图的更新,这个过程就是Virtual DOM的核心思想

2.服务端渲染优势:首屏渲染速度更快、SEO、减少HTTP请求

十九、源码篇--util

1.env:

  • 系统判断:inBrowser、isIE9、isAndroid、isIos、isWechat

  • 属性支持:hasProto

  • 过滤属性:transitionPrep、transitionEndEvent、animationProp、animationEndEvent

2.dom:

  • dom操作:query、inDoc、before、after、prepend、extractContent、remove、replace、trimNode、isTemplate、isFragment、getOuterHTML

  • 属性操作:getAttr、getBindAttr、hasBindAttr

  • class操作:setClass、addClass、removeClass

  • 事件操作:on、off

  • 其他:cateAnchor、findRef、mapNodeRange、removeNodeRange

3.lang:

  • 对象操作:set、del、hasOwn、extend、isObject、isPlainObject、def

  • 名称转换:classify、hyphenate、camelize

  • 数组操作:indexOf

  • 类型转换:_toString、toNumber、toBoolean、toArray

  • 方法绑定:bind

  • 其他:debounce、stripQuotes、cancellable、looseEqual、isLiteral、isReserved

4.components:commonTagRe、reservedTagRe、checkComponentAttr

5.options:mergeOptions、resolveAsset

6.debug:warn

到此,相信大家对"Vue.js基础知识有哪些"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

组件 数据 属性 方法 事件 内容 对象 开发 指令 过滤器 处理 参数 作用 元素 模块 状态 变化 更新 基础 函数 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 敏捷软件开发常用方法 中信国安网络安全审查 服务器如何远程管理 数据库三级模型结构分别是什么 华为账号服务器断开了怎么办 服务器装任何网卡都不行什么原因 查询数据库某个表 防火墙是怎么确保网络安全的 网络安全教育论文小学生 适合学软件开发的电脑 乡开展网络安全宣传周活动 隐身侠服务器网络设置 网站用什么数据库好 服务器是否启动linux 网络安全成智慧城市 福建网络技术咨询什么价格 联想服务器虚拟化价格 常州智能化软件开发 电脑连接服务器请稍后再试 如何压缩软件开发时间 应用无法连接上数据库 获取图片路径并存入数据库 西方国家使用互联网科技情报 番禺网络数据库维护找哪家 注册管理服务器端口号 深圳市火元素网络技术 网络安全交流研讨会报道 zabbix数据库更换ip 网络技术工人有什么发展 一台服务器多个ssh证书
0