Vue 2.0学习(三)指令与事件】的更多相关文章

Vue源码学习二 是对Vue的原型对象的包装,最后从Vue的出生文件导出了 Vue这个构造函数 来到 src/core/index.js 代码是: import Vue from './instance/index' import { initGlobalAPI } from './global-api/index' import { isServerRendering } from 'core/shared/env' import { FunctionalRenderContext } fro…
简介 除了默认设置的核心指令( v-model 和 v-show ),Vue 也允许注册自定义指令.注意,在 Vue2.0 里面,代码复用的主要形式和抽象是组件--然而,有的情况下,你仍然需要对纯 DOM 元素进行底层操作,这时候就会用到自定义指令.下面这个例子将聚焦一个 input 元素,像这样: 当页面加载时,元素将获得焦点.事实上,你访问后还没点击任何内容,input 就获得了焦点.现在让我们完善这个指令: // 注册一个全局自定义指令 v-focus Vue.directive('foc…
vm._render 生成虚拟dom 我们知道在挂载过程中, $mount 会调用 vm._update和vm._render 方法,vm._updata是负责把VNode渲染成真正的DOM,vm._render方法是用来把实例渲染成VNode,这里的_render是实例的私有方法,和前面我们说的vm.render不是同一个,先来看下vm._render定义,vm._render是通过renderMixin(Vue)挂载的,定义在src/core/instance/render.js: // 简…
(四) 组件化高级 1.插槽(slot)的基本使用 A:基本使用: <slot></slot> B:默认置:<slot><h1>中间可以放默认值</h1></slot> C:如果有多个值,同时放入到组件进行替换时,一起作为替换元素 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"&…
指令(Directives)是Vue.js模板中最常用的一项功能,它带有前缀v-,前面已经使用过v-html.v-pre等.指令的主要职责就是当表达式的值改变时,相应地将某些行为应用到DOM上. v-if <!-- html --> <div id="app"> <p v-if="show">显示这段文本</p> </div> //JS var app = new Vue({ el: '#app', dat…
基本用法 以监听一个按钮的点击事件为例,设计一个计数器,每次点击都加1: <div id = "app"> 点击次数:{{ counter }} <button @click="counter++">+1</button> </div> <script> new Vue({ el: '#app', data:{ counter: 0 } }) </script> @click的表达式可以直接使用…
基本指令 1.v-cloak v-cloak不需要表达式,它会在Vue实例结束编译时从绑定的HTML元素上移除,经常和CSS的display:none配合使用. <div id="app" v-cloak> {{ message }} </div> <script> var app = new Vue({ el: '#app', data: { message:'这是一段文本' } }) </script> 这是虽然已经加了指令v-clo…
一.vue是什么? 一个mvvm框架(库).和angular类似,比较容易上手.小巧,让我们的代码更加专注于业务逻辑,而不是去关注DOM操作 二.vue和angular之间的区别 vue--简单易学 指令以v-xx 一片html代码配合上json,再new出来vue实例 个人维护项目 适合:移动端项目,小巧 angular--上手难 指令以ng-xxx 所有属性和方法都挂在$scope身上 angular由google维护 适合:pc端项目 共同点:不兼容低版本的IE 三.vue的基本使用 1.…
「 Vue很难学吗 」 对于我这种从0.x版本就开始体验 vuejs 的人来说,当然不算难,那时候没各种脚手架和复杂搭配,仅仅是一个mvvm的解决方案库而已,解决了jq带来的繁琐操作dom痛点,所以就一直用了. 我最早用的是AngularJs,那时候15年也是刚传到国内,踩了很多坑这方面的坑,各种文档.API 和解决方案都不完善,所以知道从新学一个新的概念框架的难处和雷点,最近Vue发展的很好,也是华人所写,所以普及度很高,文档好,语法简介收获了一大批忠实深度用户,我之前web入坑系列文章也分析…
最近在用vue3重构后台的一个功能.一个弹窗组件,弹出一个表单.然后点击提交. 早上运维突然跑过来问我,为啥弹窗挡住了下边的表格的数据,我添加的时候,都没法对照表格来看了.你必须给我解决一下. 我参考了一下几大Vue的ui组件库.发现element iview antv.好像都没这个功能.为啥运维需要这个功能?? 但是没办法,只能整一个就是了. 做之前本来想直接做到dialog这个组件中.但是又担心后面其他的组件会用到.于是决定把拖拽功能做到指令中. 整个功能点如图.鼠标在拖拽区域拖动,整个对话…