学习地址:<ahref="https: cn.vuejs.="" org="" "="" target="_">https://cn.vuejs.org/
vue海量案例
首先引入vue.js;
之后实例化以下vue
var vm = new Vue({
el: '#app',
data:{
message:'Hello Word',
selectIndex: -1,
meg: 'hello vue!',
isShow: 'false',
value:'A',
arr: ['item1', 'item2', 'item3', 'item4'],
obj: { name: 'zhangsan', age: 40 },
str: 'dcwqnfeng',
classVal:'red'||'red yellow' ||['red', 'yellow']||{red: true,yellow:false,blue: true,green: true}||['red', {yellow: true, green: false}, 'blue'],
styleVal: {
width: '500px',
height: '500px',
"background-color": 'red',
backgroundImage: 'url(https://cn.vuejs.org/images/logo.png)',
border: '10px solid #666' }
},
methods: {
testAction: >function(...rest){
console.log(this.message);
//rest即所有参数
console.log('参数:', ...rest);
},
itemAction(index){
console.log('点击了',index);
this.selectIndex = index;
} }
})
1.指令:
给标签添加属性 v-<指令名字>="js表达式"
指令会根据标签的不同,添加不同的功能
(1).v-text:相当于innerTextinnerText
例:v-text="message",v-text="1+2+3+message"
简写:<span v-text="dd"></span>
v-text="message"相当于{{message}}
(2).v-html 功能相当于innerHtml
<div v-html="meg"></div>
(3).v-if 功能:通过控制标签是否存在在dom中来控制标签的显示
<div class="box" v-if="isShow">box</div>
<div class="box" v-if="value=='A'">box1-A</div>
<div class="box" v-else-if="value=='B'">box2-B</div>
<div class="box" v-else-if="value=='C'">box3-C</div>
<div class="box" v-else>box4-D</div>
(4). v-for 遍历的指令 数组的遍历:
<li v-for="(value, i) in arr">{{value}}--{{i}}</li>
<li v-for="(value, i) in ['item1', 'item2', 'item3', 'item4']">{{value}}-------{{i}}</li>
对象的遍历:
<li v-for="(v, k) in obj">{{v}}-----{{k}}</li>
<li v-for="value in obj">{{value}}</li>
<li v-for="(v, k) in {}">{{v}}-----{{k}}</li>
字符串的遍历:
<li v-for="item in str">{{item}}</li>
<li v-for="(item, index) in str">{{item}}-----{{index}}</li>
数字的遍历:
<li v-for="num in 10">
<li v-for="(num, index) in 10">
<li v-for="(num, index) in arr.length"> {{num}}------------{{index}} </li>
(5).v-on指令:绑定事件。
1.以前的所有的事件都可以在vue中实现,写法发生了变化
2.方法的配置可以加()方便传参。事件对象需要通过$event传递。也可以不加(),事件对象方法直接获得。
例:<button v-on:click="testAction()">按钮</button> 例:<button v-on:click="testAction">按钮3</button> 例:<div @:mousedovm.prevent="testAction($event) @contextmenu.stop.prevent="boxContextmenu"">按钮2</div>
例:<button v-on:click.stop.once="testAction('a', 'b', 'c', $event)">按钮1</button>
.prevent修饰,阻止默认事件/.stop修饰,阻止事件冒泡/.once修饰,事件只执行一次
(6).v-bind:绑定属性.(属性: src href id name type title alt ....)
例子:<img v-bind:src="path"> 简写:<img :src="path+'?where=super'">
class的绑定属性 例子:<div class="box" :class="classVal"></div>
style的绑定属性 <div style="width: 500px; height: 500px;background-color: red; background-image: url(https://cn.vuejs.org/images/logo.png); border: 10px solid #666"></div>
<div :style="styleVal"></div>
(7).bind-class练习 <li v-for="(item, index) in arr" :class="{active: selectIndex==index}" @click="itemAction(index)">{{item}}---{{index}}</li>
(8).v-model 专门绑定表单数据
<p>message:{{message}}</p> <input type="text" v-model="message">
(9).自定义指令,在使用该指令的实例创建前声明指令:参数1:指令名字; 参数2:指令的实现函数
Vue.directive('hello', (el, info)=>{
// el: 指令所作用的元素
// info:指令相关的信息
console.log('hello指令调用了');
console.log(el, info);
el.innerHTML = info.value;
})
(10).自定义过滤器
语法:<any>{{表达式 | 过滤器}}</any>
Vue.js 允许你自定义过滤器,可被用于一些常见的文本格式化。过滤器可以用在两个地方:双花括号插值和 v-bind 表达式 (后者从 2.1.0+ 开始支持)。过滤器应该被添加在 JavaScript 表达式的尾部,由“管道”符号指示:
<!-- 在双花括号中 -->
{{ message | capitalize }}
<!-- 在 `v-bind` 中 -->
<div v-bind:id="rawId | formatId"></div>
你可以在一个组件的选项中定义本地的过滤器:
filters: {
capitalize: function (value) {
if (!value) return ''
value = value.toString()
return value.charAt(0).toUpperCase() + value.slice(1)
}
}
或者在创建 Vue 实例之前全局定义过滤器:
Vue.filter('capitalize', function (value) {
if (!value) return ''
value = value.toString()
return value.charAt(0).toUpperCase() + value.slice(1)
})
new Vue({
// ...
})
(11).v-pre 解析dom时,跳过这个标签,不解析这个标签中的所有内容,可以保留双花括号(v-cloak、v-test)
例:<p v-pre>{{你好!}}</p>
- Vue框架:挂载点-过滤器-事件指令-表单指令
近期学习安排 1.Vue框架 前台html+css+js框架,是不同于js与JQuery的数据驱动框架, 学习的知识点:指令 | 实例成员 | vue项目 2.drf框架 django的插件,完成前 ...
- requests库写接口测试框架初学习
学习网址: https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-dscpm/ff75b907-415d-4220-89 ...
- Slog27_支配vue框架初阶项目之博客网站-样式居中
ArthurSlog SLog-27 Year·1 Guangzhou·China July 30th 2018 GitHub 掘金主页 简书主页 segmentfault 没有写够足够的代码量,想成 ...
- vue第四单元(初识vue-在页面中直接引入vue框架-学习使用vue语法-vue的指令-介绍data用法-methods用法)
第四单元(初识vue-在页面中直接引入vue框架-学习使用vue语法-vue的指令-介绍data用法-methods用法) #课程目标 了解 vue 框架的特点 掌握创建 vue 实例 掌握 data ...
- Vue 框架-07-循环指令 v-for,和模板的使用
Vue 框架-07-循环指令 v-for,和模板的使用 本章主要是写一些小实例,记录代码,想要更详细的话,请查看 官方文档:https://cn.vuejs.org/v2/guide/#%E6%9D% ...
- VUE框架学习——脚手架的搭建
#我的VUE框架学习 题记:初识VUE,觉得VUE十分的不错,故决定去深入的了解学习它,工欲善其事,必先利其器,下面是我搭建vue环境的过程! #一.项目搭建及初始化 1.安装:node.js:去官网 ...
- vue框架学习笔记(vue入门篇)
vue框架 - 构建用户界面的渐进式框架 - 采用自底层向上增量开发的设计 - 核心库只关注视图层 - 当与单文件组件和vue生态系统支持的库结合使用时,也完全能够为复杂的单页应用程序提供驱动 - v ...
- Vue框架(一)——Vue导读、Vue实例(挂载点el、数据data、过滤器filters)、Vue指令(文本指令v-text、事件指令v-on、属性指令v-bind、表单指令v-model)
Vue导读 1.Vue框架 vue是可以独立完成前后端分离式web项目的js框架 三大主流框架之一:Angular.React.Vue vue:结合其他框架优点.轻量级.中文API.数据驱动.双向绑定 ...
- vue学习04 v-on指令
vue学习04 v-on指令 v-on的作用是为元素绑定事件,比如click单击,dbclick双击 v-on指令可简写为@ 代码测试 <!DOCTYPE html> <html l ...
随机推荐
- Angular2.0的学习(三)
第三节课:依赖注入 1.什么是依赖注入模式及使用依赖注入的好处 2.介绍Angular的依赖注入实现:注入器和提供器 3.注入器的层级结构
- 使用shell巧妙高效的批量删除历史文件或目录
背景:有实时产生的数据按小时分文件保存,如“/data/2013/09/18/14.txt”.现需要保留30天的最新数据,而删除所有其它的历史数据.注意“保留30天的最新数据”,可能不是连续的30天, ...
- py---------模块和包
单独导入包 单独导入包名称时不会导入包中所有包含的所有子模块,如 #在与glance同级的test.py中 import glance glance.cmd.manage.main() ''' 执行结 ...
- python入门之进程与线程
什么是进程.线程 进程:一个整体的形式暴露给操作系统管理,里面包含对各种资源的调用,内存的管理,网络接口的调用等,对各种资源管理的基本单位. 线程:操作系统最小的调度单位, 是一串指令的集合,进程中的 ...
- 深刻理解Linux进程间通信(IPC)
https://www.ibm.com/developerworks/cn/linux/l-ipc/ linux下进程间通信的几种主要手段简介: 管道(Pipe)及有名管道(named pipe):管 ...
- java编程如何实现2017-01-16 22:28:26.0这样的时间数据,转换成2017:01:16:22:28:26这样的时间数据
不多说,直接上干货! timereplace.java package zhouls.bigdata.DataFeatureSelection.util; /* * 这个程序,是用来做补充的 */ p ...
- 查看Memcache运行状况
Memcache Memcache是danga.com的一个开源项目,它是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的Hash表,能够用来存储各种格式的数据. 查看当前的me ...
- 有限状态机在单片机和 Arduino 编程中的应用
有限状态机在单片机和 Arduino 编程中的应用,个人认为在实际中这是一种思想,意味着解决一类问题. 本帖最后由 张飞 于 2015-3-4 20:18 编辑 在单片机编程中,如果在不使用操作系统的 ...
- 《从0到1学习Flink》—— Flink Data transformation(转换)
前言 在第一篇介绍 Flink 的文章 <<从0到1学习Flink>-- Apache Flink 介绍> 中就说过 Flink 程序的结构 Flink 应用程序结构就是如上图 ...
- SpringBoot | 第三十七章:集成Jasypt实现配置项加密
前言 近期在进行项目安全方面评审时,质量管理部门有提出需要对配置文件中的敏高文件进行加密处理,避免了信息泄露问题.想想前段时间某公司上传github时,把相应的生产数据库明文密码也一并上传了,导致了相 ...