vue.js的基本操作
1.{{message}}输出data数据中的message。
2.v-for="todo in todos"输出data数据中的dotos数组
3.v-on:click="aaaa"绑定methods中的aaaa()事件,可以简写为@click
4.v-model="input" 输出data数据中input的值,双向绑定。
5.this.$dispatch("aaa", this.msg)向上派发事件,aaa写在events中
6.:id="branch"表示id的值由data数据中的branch决定,通常用于for循环
<template v-for="branch in branches">
<!--:为传入的branch值-->
<input type="radio" name="branch" :id="branch" :value="branch" v-model="currentBranch"><label :for="branch">{{branch}}</label>
</template>
7.:class="{bold: isFolder}"或:class="{isFolder1 > 0 ? 'aaa1' : 'bbb1' }"表示当isFolder为true时class=bold。
8.v-show="open"表示当open为true时显示
9.v-if="isFolder"表示当isFolder为true时显示
10.v-show与v-if的区别为当元素不显示时,v-show可以将data中的open设置为false,实现双向数据绑定
11.子组件获取数据的方式
例:在父级中设置<item class="item" :model="treeData"></item>
子级中使用
Vue.compoent("item", {
props: ['model']
...
})
的方式获取
12.created:生命周期,DOM还未形成之前
13.computed:生命周期,在例如:class="{bold: isFolder}中的isFolder是true还是false的时候执行
14.在子级下的数据data的写法为
data:function() {
return {
open: false
}
}
以上的return值表示open的获取,不表示将open返回到父级,与双向绑定无关.
var Person = Vue.extend({
template: "<div><span>name: </span>{{name}}<span>age: </span>{{age}}</div>",
data: function() {
return {
name: "lili",
age: 22
}
}
});
15.{{key | filter}}表示key通过filters中的filter()函数进行过滤
16.v-for="entry in data | filterBy filterKey"表示在循环中直接进行数据过滤
16.debounce="300"表示延迟执行300ms
17.v-html相当于
<div v-html="html"></div>
<!-- 相同 -->
<div>{{{html}}}</div>
即可以输出html的标签,在表单提交的时候不使用,防止xss攻击
18.watch表示监听
watch: {
currentBranch: 'fetchData'
}
当打他数据中的currentBranch发生改变时,执行fetchData函数
19.slot的使用
<div class="modal-header">
<slot name="header">
default header
</slot>
</div> <div class="modal-body">
<slot name="body">
default body
</slot>
</div>
<h3 slot="header">custom header</h3>
slot会将defaut中的default header变为custom header。
20.sync实现双向数据绑定,将父级通过props传入到子级中的变量通过子级进行修改,双向绑定后会改变父级中的对应传到子级的那个变量
21.transition添加css属性实现动态效果
例一个class="expand"的属性
.expand-transition {
transition: all .3s ease;
height: 30px;
padding: 10px;
background-color: #eee;
overflow: hidden;
}//表示正常情况下的效果
.expand-enter, .expand-leave {
height: 0;
padding: 0 10px;
opacity: 0;
}//元素在消失或显示的时候展示的效果
<div transition="expand"></div>直接写在html标签中
<div v-if="show" :transition="transitionName">hello</div>
new Vue({
el: '...',
data: {
show: false,
transitionName: 'expand'
}
})
//写在Vue里
写在Vue里
22.
var data = {a: 1};
var vm = new Vue({
el: '#app',
data: data
})
console.log(vm.a === data.a);//true
vm.a = 2;
console.log(data.a);//
data.a = 3;
console.log(vm.a);//
23.v-for循环输出,点击事件可以通过设置参数获取位置
例:<button v-on:click="removeTodo($index)">X</button>
23.子级下的子级添加组件的方式
例:
var Person = Vue.extend({});
var Contact = Vue.extend({
template: "<person></person>",
components: {
'person': Person
}
})
24.项目实例:https://github.com/PLDaily/vuejs-project
vue.js的基本操作的更多相关文章
- 使用eclipse初步学习vue.js的基本操作 ①
一.vue.js的初步认识 <a href="https://unpkg.com/vue ">vue.js下载</a> 1.抛开手动操作DOM的思维,Vue ...
- 基于 Vue.js 之 iView UI 框架非工程化实践记要
像我们平日里做惯了 Java 或者 .NET 这种后端程序员,对于前端的认识还常常停留在 jQuery 时代,包括其插件在需要时就引用一下,不需要就删除.故观念使然,尽管 Nuget 和 Maven ...
- ABP+NetCore+Vue.js实现增删改查
ABP我就不多介绍了,不知道的可以自己百度 本篇开发工具VS2017,数据库SQL SERVER2012,系统Win7 1.去ABP官网下载对应的模板,下载地址:https://aspnetboile ...
- 基于 Vue.js 之 iView UI 框架非工程化实践记要 使用 Newtonsoft.Json 操作 JSON 字符串 基于.net core实现项目自动编译、并生成nuget包 webpack + vue 在dev和production模式下的小小区别 这样入门asp.net core 之 静态文件 这样入门asp.net core,如何
基于 Vue.js 之 iView UI 框架非工程化实践记要 像我们平日里做惯了 Java 或者 .NET 这种后端程序员,对于前端的认识还常常停留在 jQuery 时代,包括其插件在需要时就引 ...
- web前端开发面试题(Vue.js)
1.active-class是哪个组件的属性?嵌套路由怎么定义? 答:vue-router模块的router-link组件. 2.怎么定义vue-router的动态路由?怎么获取传过来的动态参数? ...
- Vue.js 和 MVVM 小细节
MVVM 是Model-View-ViewModel 的缩写,它是一种基于前端开发的架构模式,其核心是提供对View 和 ViewModel 的双向数据绑定,这使得ViewModel 的状态改变可以自 ...
- Vue.js 2.0 和 React、Augular等其他框架的全方位对比
引言 这个页面无疑是最难编写的,但也是非常重要的.或许你遇到了一些问题并且先前用其他的框架解决了.来这里的目的是看看Vue是否有更好的解决方案.那么你就来对了. 客观来说,作为核心团队成员,显然我们会 ...
- 窥探Vue.js 2.0 - Virtual DOM到底是个什么鬼?
引言 你可能听说在Vue.js 2.0已经发布,并且在其中新添加如了一些新功能.其中一个功能就是"Virtual DOM". Virtual DOM是什么 在之前,React和Em ...
- vue.js学习笔记
有了孩子之后,元旦就哪也去不了了(孩子太小),刚好利用一些时间,来公司充充电补补课,学习学习新技术,在这里做一个整理和总结.(选择的东西,既然热爱就把他做好吧!). 下来进入咱们的学习环节: 一.从H ...
随机推荐
- 离线安装 Python 2.7, paramiko 和 tornado
无非就是离线安装, 步骤比较繁琐, 记录一下. 需求很简单, 一个离线安装的 Python, 能跑 tornado 和 paramiko 1. 离线安装 Python 2.7 .tgz cd Pyth ...
- maven学习(下)利用Profile构建不同环境的部署包
接上回继续,项目开发好以后,通常要在多个环境部署,象我们公司多达5种环境:本机环境(local).(开发小组内自测的)开发环境(dev).(提供给测试团队的)测试环境(test).预发布环境(pre) ...
- 结合实例详细介绍encodeURI()、encodeURIComponent()、decodeURI()、decodeURIComponent()使用方法
在介绍encodeURI().encodeURIComponent().decodeURI().decodeURIComponent()方法前我们需要了解Global对象的概念: Global(全 ...
- code first提示已有打开的与此 Command 相关联的 DataReader,必须首先将它关闭解决方法
使用codefirst查询当然是必不可少的,但有时不小心可能很简单的查询也会导致异常. 下面用codefirst做个示例简单演示下异常发生的场景: var attendlist = db.Databa ...
- IE8下导入EXCEL数据传到客户端以附件下载
IE8下导入EXCEL数据传到客户端以附件下载方式出现,而不显示数据,解决方法:以text/html格式返回. HttpResponseMessage message = new HttpRespon ...
- java回调机制
http://www.cnblogs.com/heshuchao/p/5376298.html
- tomcat启动报错No UserDatabase component found under key UserDatabase
非正常关机,造成了tomcat下conf文件中的tomcat-user.xml文件异常,copy一个新的tomcat-user.xml覆盖就可以了.
- Vue.js与MVVM
MVVM 是Model-View-ViewModel 的缩写,它是一种基于前端开发的架构模式,其核心是提供对View 和 ViewModel 的双向数据绑定,这使得ViewModel 的状态改变可以自 ...
- ios 输入框bar设置
_textView = [[class alloc] init]; _textView.translatesAutoresizingMaskIntoConstraints = NO; ...
- JIRA FOR LINUX 安装过程
1.Download 官网下载地址:https://www.atlassian.com/software/jira/download,只看到window下的安装版本,这个时候需要点击? All JIR ...