vuejs学习笔记(2)--属性,事件绑定,ajax
属性
v-for 类似于angular中的 ng-repeat ,用于重复生成html片段;
<ul id="box">
<li v-for="(v, i) in list">{{v}}</li>
</ul>
<script>
var vm = new Vue({
el: '#box', // 对应的元素选择器 或者是 指向元素的变量
data: { // data
list: [1,2,3]
}
});
</script>
也可以写成这种形式 v-for='v in list' ,重复的数据也可以是js对象格式的。
v-show 与angular中的 ng-show 是一样的,值为 true 则显示,false 则隐藏(display:none)。
v-model 与angular中的 ng-model 一样,主要用于input元素值的绑定。
v-bind: 用于绑定属性值;
<img v-bind:class="class" v-bind:src="src"/>
<script>
var vm = new Vue({
el: '#box', // 对应的元素选择器 或者是 指向元素的变量
data: { // data
class: ['class1','class2'], //
src: 'img/1.png'
}
});
</script>
这里的class数据也可以是对象形式的 {'class1': true, 'class2': false},对象中的key值为类名,value为真则应用此类名,否则反之;
还可以是字符串 'class1' 。
v-bind: 的简写形式,如 v-bind:class 可以写成 :class , v-bind:src 可以写成 :src ,推荐使用简写。
事件绑定
vuejs中使用 v-on:click="fn()" 的形式绑定事件:
<input type="button" v-on:click="add()"> // <input type="reset" v-on:click=" username='123' "> // 也可以是一条js语句 <input type="button" @click="add($event)"> // @click 是 v-on:click 的简写,推荐使用 <input type="text" @click.stop="add($event)"> // .stop 表示阻止冒泡 <input type="text" @click.prevent="add($event)"> // .prevent 表示默认行为 <input type="text" @keydown.up="add($event)"> // .up 对应键盘up键 <input type="text" @keydown.left="add($event)"> // .left 对应键盘left键
<input type="text" @keydown.13="add($event)"> // .13 对应 enter 键
<script>
var vm = new Vue({
el: '#box', // 对应的元素选择器 或者是 指向元素的变量
data: { // data
username: 'vuejs'
}, methods: { // 存放事件对应的方法 add:function(e){} }
});
</script>
vue 提供多种形式的事件绑定,没有他做不到,只有你想不到。
ajax
vue 本身并没有封装ajax模块,我们可以使用vue的插件 vue-resource.js 来做数据交互;当然也可以使用 jquery
vue-resource.js 的API 与jquery的 ajax 类似,容易上手:
<script src="vue.js"></script> <script src="vue-resource.js"></script>
<script>
var vm = new Vue({
el: '#box', // 对应的元素选择器 或者是 指向元素的变量
data: { // data
username: 'vuejs'
}, methods: { // 存放事件对应的方法 get: function(e){ this.$http.get('url').then( function(result){console.log('success')}, // 请求成功的回调函数 function(result) {console.log('fail')} // 失败时的回调函数 ) } }
});
</script>
$http.get() 返回的是 promise 对象。大白话讲解Promise(一)
$http也支持 post(), jsonp()跨域 等方法。
vuejs学习笔记(2)--属性,事件绑定,ajax的更多相关文章
- 微信小程序学习笔记二 数据绑定 + 事件绑定
微信小程序学习笔记二 1. 小程序特点概述 没有DOM 组件化开发: 具备特定功能效果的代码集合 体积小, 单个压缩包体积不能大于2M, 否则无法上线 小程序的四个重要的文件 *js *.wxml - ...
- VueJs 学习笔记
VueJs学习笔记 参考资料:https://cn.vuejs.org/ 特效库:TweenJS(补间动画库) VelocityJS(轻量级JS动画库) Animate.css(CSS预设动画库) ...
- iOS学习笔记之触摸事件&UIResponder
iOS学习笔记之触摸事件&UIResponder 触摸事件 与触摸事件相关的四个方法如下: 一根手指或多根手指触摸屏幕 -(void)touchesBegan:(NSSet *)touches ...
- vuejs学习笔记(1)--属性,事件绑定,ajax
属性 v-for 类似于angular中的 ng-repeat ,用于重复生成html片段: <ul id="box"> <li v-for="(v, ...
- node学习笔记(二)(ajax方式向node后台提交数据)
通过ajax向node后台提交数据过程(附手写前后台代码),并总结post与get的区别 POST 前台代码 //CSS简单给点样式 <style> form{ width: 200px; ...
- VueJs学习笔记
在cmd下,进入目录之后 cd 到项目目录下 1 安装node cnpm install 2 启动或者调试 cnpm start (或是npm run dev) 3 上线: npm run b ...
- 【zepto学习笔记03】事件机制
前言 我们今天直接进入事件相关的学习,因为近期可能会改到里面的代码就zepto来说,我认为最重要的就是选择器与事件相关了,随着浏览器升级,选择器简单了,而事件相关仍然是核心,今天我们就来学习学习 ze ...
- Vuejs学习笔记(一)
1) vue.js 的 主要功能 1.模板渲染 2.模块化 3.扩展功能:路由,Ajax 2) vue.js 模板渲染之双向绑定示例 message 绑定到了 input 对象,所有在in ...
- 学习笔记:IDEA、原生ajax的三道练习题、Markdown
前言 该从何说起呢?想写博客好久了,正好这个学期课很少(大三),可以静下心来写点东西(虽然事情依旧很多),总感觉记录和分享是一件很酷的事情.第一篇博客,第一次使用Markdown写博客,第一次使用ID ...
随机推荐
- 实现 $.extend 的深复制和浅复制
$.extend 是jquery常用的一个方法,该方法通过传第一个布尔型参数可以指定为深复制还是浅复制,如何使用不在本文讨论. 先来理解下什么是深复制: var ob1 = {'name' : 'Ja ...
- fetch使用的常见问题及解决办法
首先声明一下,本文不是要讲解fetch的具体用法,不清楚的可以参考MDN fetch教程. 引言 说道fetch就不得不提XMLHttpRequest了,XHR在发送web请求时需要开发者配置相关请求 ...
- 工具使用——MATLAB基本调试方法
作者:桂. 时间:2017-02-28 07:06:30 链接:http://www.cnblogs.com/xingshansi/articles/6477185.html 声明:转载请注明出处, ...
- 同一环境下新建Standby RAC库
需求:在同一个环境下新建Standby RAC库,即和Primary RAC在相同的磁盘组. 说明:生产环境一般不建议这样配置DG,因为存储层面是相同磁盘组,灾备的实际意义不大.我这里是用作读写分离. ...
- Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包
Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包 >>>>>>>>>>>& ...
- js获取浏览器宽高
IE中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.d ...
- java线程学习(一)
1.简介 java基础知识部分线程创建的三种方式.线程执行的样例. 代码地址:http://git.oschina.net/blue_phantom/javaj 包位置:package com.blu ...
- li点击弹出序号
<body> <ul> <li>test1</li> <li>test2</li> <li>test3</li ...
- wemall app中基于Java获取和保存图片的代码
wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.分享其中关于 保存正在下载的图片URL集合和图片三种获 ...
- 重回博客 谈一谈Node中的异步和单线程
重回博客,这个帐号之前注册后就只发了一篇博客.听朋友建议,决定一周两次更新. 第一篇谈论一下最近想的比较多的异步的问题. 传统多线程异步 传统的异步是多线程的,当要同时做两件事的时候,他们是执行在不同 ...