在Vue中,父组件可以往子组件中传递一些属性值。而子组件需要使用props配置项定义这些要从父组件中获取的数据。 使用props配置项,可以让该组件的标签在被使用时,通过组件标签属性将值传入组件中。 例如: 1<!-- SiteUser.vue --> 2<template> 3 <div> 4 <h2>姓名:{{name}}</h2> 5 <h2>年龄:{{age}}</h2> 6 <h2>性别:{{sex}}</h2> 7 </div> 8</template> 9<script> 10export default { 11 name: 'SiteUser', 12 // 声明需要接收的属性 13 props: [ 14...

ref 属性 在Vue的模板中可以通过为元素或子组件添加ref属性(如ref="elementRefValue")来告诉Vue实例(或组件实例)要获取该元素。例如: 1<h1 v-text="msg" ref="title"></h1> <!-- 获取Html内置标签元素 --> 2<MySite ref="site"/> <!-- 获取Vue组件 --> 在Vue中,ref属性被用来给元素或子组件注册引用信息。 然后在Vue实例或组件实例中,通过this.$refs.elementRefValue来获取该元素或子组件的对象。例如: 1this.$refs.title // 获取真实DOM元素 2this.$refs.site...

单文件组件 Vue单文件组件是指使用由Vue定义的.vue格式的文件。.vue文件模板如下: 1<!-- Vue 只能包含以下三种标签 --> 2 3<!-- 组件的结构 --> 4<template> 5 <!-- ... --> 6</template> 7 8<!-- 组件交互相关的代码(数据、方法等等) --> 9<script> 10 export default { 11 // ... 12 }; 13</script> 14 15<!-- 组件的样式 --> 16<style> 17 /* ... */ 18</style> 其中: <template>:用于定义组件的结构。相当于组件配置中的template配置项。...

组件是指实现应用中局部功能代码(html、css、js等)和资源(图片、音频、视频等)的集合。 传统的Web应用存在以下缺点: 依赖关系混乱,不易于维护。 代码复用率不高。 CSS文件可以通过外部引入,不存在复用率不高的问题。JS的模块化解决了JS代码复用率不高的问题。而Html想要复用却不是那么容易。 模块化应用:当应用中的JS都以区分模块的形式来编写,那么这个应用就是一个模块化的应用。 组件化应用:当应用中的功能都是以多组件的方式来编写,那么这个应用就是一个组件化的应用。 使用Vue组件可以扩展HTML元素,封装可重用的代码,解决了上述问题。 使用组件系统可以用独立可复用的小组件来构建大型应用,几乎任意类型的应用的界面都可以抽象...

Vue生命周期指的是Vue实例或Vue组件实例在创建时经历的一系列初始化步骤。 在这个过程中Vue为用户提供了一些可供用户自定义的函数,即生命周期回调函数。这些函数又称为生命周期函数或生命周期钩子。 生命周期图示 Vue组件的生命周期图示如下: 下图是尚硅谷天禹所给的有关Vue生命周期的解释: 生命周期函数 生命周期函数本质是Vue在生命周期过程中的某些关键时刻帮用户调用的一些特殊名称的函数。 生命周期函数的名字不可更改,但函数的具体内容由程序员根据需求编写。 生命周期函数中的this指向的是当前的Vue实例或当前组件的实例对象。 下方代码演示了Vue生命周期函数: 1<div id="app"> 2 <!-- <h2...

数据代理是指通过一个对象代理另一个对象中属性的(读/写)操作。 数据代理的原理 数据代理可以通过Object.defineProperty()实现。在Vue中,很多技术的实现都使用到了Object.defineProperty()这个方法。 Object.defineProperty()的用法如下所示: 1let person = { 2 name: '张三', 3 sex: '男', 4 // age: 18, 5} 6 7/** 8 * 使用 Object.defineProperty() 给对象添加属性 9 * 1. 参数1:要添加属性的对象 10 * 2. 参数2:要给对象添加的属性名称 11 * 3. 参数3:要添加的属性...

文本插值 数据绑定最常见的形式就是文本插值。 在HTML标签体中,使用两个花括号{{ }}将JS表达式引起来。文本插值含义是将JS表达式的结果作为文本显示到页面中;并不是指JS表达式的结果为文本。 插值表达式的语法如下: 1{{expression}} 其中,expression将作为JS表达式去解析并执行。示例如下: 1<div id="app"> 2 <h1>Hello, {{name}}<!-- 插值表达式 -->!</h1> 3</div> 4 5<script type="text/javascript"> 6 new Vue({ 7 el: '#app', 8 data: { 9 name: 'Vue.js' 10 }...

Vue.js 使用了基于 HTML 的模板语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据。结合响应系统,在应用状态改变时, Vue 能够智能地计算出重新渲染组件的最小代价并应用到 DOM 操作上。 Vue中模板语法有以下两种类型: 插值语法:用{{}}包裹起来的表达式。 Vue插值语法中,可以指定JS表达式将数据与模板进行绑定。 与语句不同的是,插值表达式指可以生成值的语句,这个语句可以放在任何需要值的地方。也就是说插值表达式一定需要有值(或返回值)。表达式中的变量、方法都是在对应Vue实例的 data 中定义的。当data发生了改变,页面中对应的数据也会发生改变(动态)。 指令语法:以v-为开头的Vue指令。

指令是指在Vue模板中由Vue原型对象或用户自定义的、带有v-前缀的特殊HTML属性。指令可以用于解析标签(包括标签属性、标签内容、绑定事件等等)。 数据绑定 单向数据绑定 v-bind单向数据绑定:单向绑定是指数据只能从Vue实例中的data流向页面内容。 将v-bind:置于要使用表达式的HTML属性前,Vue会将其属性值解析为表达式。v-bind的语法规则如下: 1v-bind:attribute="expression" attribute:v-bind指令的参数,v-bind指令的参数是HTML属性。 expression:表达式中的对象和方法等均来自Vue实例。 例如: 1<div id="app"> 2 <a...

Vue.js 是一套构建用户界面的渐进式框架。Vue 只关注视图层,采用自底向上增量开发的设计。Vue 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。 在学习Vue之前需要了解HTML、CSS和JavaScript。 Vue的特点: 采用组件化模式,提高代码复用率、且让代码更好维护。 采用声明式编码,让编码人员无需直接操作DOM,提高开发效率。 使用传统JS操作DOM属于命令式编码。 使用虚拟DOM和优秀的Diff算法,尽量复用DOM节点。 Vue官网为:https://cn.vuejs.org/。 安装 Vue 安装Vue的方式有很多,可以在Vue2文档中查阅。 其中最简单的方式就是通过<script>标签...