vue基本指令
2018-12-12 23:03
190 查看
what
jq是js框架
用起来方便。兼容性问题 。 代码简化
vue框架
用起来方便 是真方便
vue 将减少开发者在dom操作的精力(都不用管dom操作了,通过指令将元素和数据关联到一起)
将精力转移到数据操作
数据变页面变
实例
new Vue({ el:'#app',//挂载 data:{},//存放数据 methods:{},//方法 computed:{},//计算属性 filter:{},//过滤器 })
指令
内置指令 v- 开头
自定义指令
条件渲染 v-if v-else v-else-if
列表渲染 v-for
事件处理 v-on:eventname click dblclick …
组件
过滤器
计算属性
监听
axios
router
vuex
vue-cli
vue全家桶 vue-cli(脚手架工具) vuex(状态管理) axios(数据请求)router(路由)
vue内置指令
v-if 条件渲染
<div id='app'> <p v-if='show'>我在这 if</p> <p v-show='show'> 我在这 show</p> </div>
let vm=new Vue({ el:'#app', data:{ show:false } }) // v-if 条件渲染 根据参数的真假 来控制元素是否渲染 操作的是元素节点的增删 不经常切换 // v-show 根据参数的真假 来控制元素是否显示 控制display:none|block 使用于频繁切换显示隐藏
v-for 用于遍历数组和对象
数组<div id='app'> <ul> <li v-for='(item,index) in list'>{{item}}--{{index}}</li> </ul> </div>
let vm=new Vue({ el:'#app', data:{ list:['爱情','动漫','恐怖','科幻'] } }) // v-for 列表渲染 绑定一个数据(数组或者对象)到元素上 // 会根据数据循环创建元素 // item 数组里的每一项 index 下标对象
<div id='app'> <ul> <li v-for="(val,key,index) in obj">{{key}}:{{val}}---{{index}}</li> </ul> </div>
let vm=new Vue({ el:'#app', data:{ obj:{name:'wangyi',age:16,sex:1,pass:456} } }) // 遍历一个对象 val 值 key:键 index 下标 // 关键字 in of 都可以
v-on 绑定事件 v-on:等同于@
<div id='app'> <button v-on:click="test">点我</button> {{show}} <div v-show='show'>显示隐藏</div> </div>
let vm=new Vue({ el:'#app', data:{ show:false }, methods:{ // test:function(){ // alert(111) // } // test:()=>{ // alert(111) // } test(){ this.show=!this.show } } })
v-bind 绑定属性 v-bind:等同于 :
div{ width: 200px; height: 100px; } .red{ background: red; } .green{ background: lightgreen; }
<div id='app'> <div v-bind:class='state?"red":"green"'> </div> <button @click="toggle">toggle</button> </div>
let vm=new Vue({ el:'#app', data:{ list:[1,2,3,4,5,6,7], state:false }, methods:{ toggle(){ this.state=!this.state } } }) // v-bind 绑定一个属性 这个属性的值就可以用data里的变量来表示
事件修饰符
阻止冒泡
<div id="content"> <div @click.self="c1"> 这里是yy <div @click="c2"> 这里bb <div @click.stop="c3"> 这是son </div> </div> </div> </div>
let vm=new Vue({ el:'#content', data:{ }, methods:{ c1(){ console.log('点到爷爷') }, c2(){ console.log('点到爸爸') }, c3(){ console.log('点到son') } } })
阻止浏览器的默认行为
<div id="content"> <form v-on:submit.prevent="onSubmit"> <input type="text"> <input type="text"> <button>add</button> </form> </div>
let vm=new Vue({ el:'#content', data:{ }, methods:{ onSubmit(){ console.log(111) } } })
键盘事件快捷键
<div id="content"> <!-- <input type="text" v-on:keyup.37='enter'> --> <!-- <input type="text" v-on:keyup.enter='enter'> --> <!-- <input type="text" v-on:keyup.left='enter'> --> <input type="text" v-on:keyup.haha='enter'> </div>
Vue.config.keyCodes.enter = 13 let vm=new Vue({ el:'#content', data:{ }, methods:{ enter(){ console.log(111) } } })
vue实例的配置项
- el
- data
- methods
- computed
- filters
- components
组件
组件的创建与注册
<div id='app'> <hehe></hehe> </div>
// 第一种方法 先创建 再注册 // 组件就是vue的一个拓展实例 let component=Vue.extend({ template:'<h1>假装我是一个非常复杂的banner图</h1>'// 模板 这个组件的html元素 }) //注册组件 Vue.component('hehe',component) // 第二种方法 Vue.component("hehe",Vue.extend({ template:'<h1>假装我是一个非常复杂的banner图</h1>'// 模板 这个组件的html元素 })) // 第三种方法 最简版 创建+注册 Vue.component('hehe',{ template:'<h1>假装我是一个非常复杂的banner图</h1>'// 模板 这个组件的html元素 }) new Vue({ el:'#app', data:{ test:11 } }) // 创建组件 // 注册组件 全局组件和局部组件 // 将组件作为标签使用
全局组件
<div id='app'> //使用 <hehe></hehe> </div> <hr> <div id='app1'> //使用 <hehe></hehe> </div>
//全局组件缩写 创建+注册 Vue.component('hehe',{ template:'<h1>假装我是一个非常复杂的banner图</h1>'// 模板 这个组件的html元素 }) new Vue({ el:'#app', data:{ test:11 } }) new Vue({ el:'#app1', data:{ test:11 } })
组件内的配置项
- data
<div id='app'> <hehe></hehe> </div>
// 组件就是vue的一个拓展实例 let component=Vue.extend({ template:'<h1>你好{{name}},我是李雷</h1>',// 模板 这个组件的html元素 data(){ return { name:'韩梅梅' } } }) //注册全局组件 Vue.component('hehe',component); new Vue({ el:'#app', data:{ test:11 } }) // 组件内部的数据 可以绑定到组件内部的模板 // 组件的data数据格式不是对象而是一个函数,在函数的内部返回对象 让每一个组件都有自己单独的作用域
- methods
- filters
- computed
- watch
- components 注册组件名时含有大写字母 使用时用-连接 大写改成小写
- template 必须有根节点
使用vue
1.创建数据信息 数据源 数据
2.将元素和数据进行关联 通过指令
3.根据需求修改数据, 数据变页面
相关文章推荐
- Vue 学习笔记 1.0 --- 基本概念 && 常用指令
- Vue.js基本指令
- vue 指令基本使用
- vue 指令基本使用
- Vue基本使用二-指令
- vue指令(组件)的基本使用一
- vue的基本用法与常见指令
- 1.vue的基本概念及常见指令
- vue学习02 vue-cli 模板创建后的基本结构 及内容组件 指令
- VUE基本指令(v-model,v-html,v-text,v-bind,v-if,v-show,v-for,v-on:click,组件,过滤器)
- [js高手之路] vue系列教程 - vue的基本用法与常见指令(1)
- Vue学习-基本指令
- vue 指令基本使用大全
- Vue.js基本代码及基本指令
- Vue基本语法和指令
- Vue入门学习笔记【基本概念、对象、过滤器、指令等】
- 从零开始学 Web 之 Vue.js(一)Vue.js概述,基本结构,指令,事件修饰符,样式
- Vue.js基础指令、基本介绍
- Linux之redhat初学者基本指令教程(三)——vim教程
- 基本 VIM 操作指令