vue生命周期:
  钩子函数:

  created -> 实例已经创建 √
  beforeCompile -> 编译之前
  compiled -> 编译之后
  ready -> 插入到文档中(相当于window.onload,页面初始化写在此处) √

  beforeDestroy -> 销毁之前
  destroyed -> 销毁之后

防止双大括号闪烁

  v-cloak  适用于大段落

  v-text   适用于小段文字

  v-html

计算属性

  angular中使用$scope.$watch进行监听变化

  vue中计算属性的使用:

   computed:{
b:function(){ //默认调用get
return 值(依赖于data中的数据)
}
}
--------------------------
完整用法(get和set方法)
computed:{
b:{
get:function(){},
set:function(){}
}
} * computed里面可以放置一些业务逻辑代码,一定记得return

vue实例简单方法:
  vm.$el -> 就是绑定实例的元素
  vm.$data -> 就是实例的data数据
  vm.$mount -> 手动挂载vue实例到元素上(同el配置项)

  vm.$options -> 获取自定义属性
  vm.$destroy -> 销毁对象

  vm.$log(); -> 查看现在数据的状态

循环重复问题
  v-for="value in data"

  会有重复数据?
  track-by='索引' 提高循环性能

  track-by='$index/uid'

过滤器

  vue提供过滤器:
capitalize uppercase currency.... debounce 配合事件,延迟执行(加上延迟时间参数)
数据(数组)配合使用过滤器:
limitBy 限制几个(后面加参数)
limitBy 参数(取几个)
limitBy 取几个 从哪开始(两个参数) filterBy 过滤数据(后面的参数是包含的过滤条件,类似模糊查询)
filterBy ‘谁’ orderBy 排序(按首字母排序)
orderBy 谁 1/-1 )(两个参数,按谁排,正倒序)
1 -> 正序
-1 -> 倒序 自定义过滤器: model ->过滤 -> view
Vue类上有方法filter
Vue.filter(name,function(input){
//input是要处理的内容,后面也可以有传参数
}); 时间转化器
过滤html标记 双向过滤器:*
Vue.filter('filterHtml',{
read:function(input){ // model->view
return input.replace(/<\/?.+?\/?>/g,'');
},
write:function(val){ //view -> model
return val;
}
}); 数据 -> 视图
model -> view view -> model

自定义属性指令

  指令: 扩展html的功能语法 (可以做dom操作,拖拽也只能在指令里面实现)v-text , v-for, v-html

  定义方法:

    Vue.directive(指令名称,function(参数){
      this.el -> 原生DOM元素,vue实例的el
    });

  使用(可传参数):

    <div v-red="参数"></div>

    指令名称: v-red -> red(v-去掉,使用的时候必须以v-开头)

    * 注意: 必须以 v-开头

    拖拽实现代码:    

        Vue.directive('drag',function(){
       var oDiv=this.el;
oDiv.onmousedown=function(ev){
var disX=ev.clientX-oDiv.offsetLeft;
var disY=ev.clientY-oDiv.offsetTop; document.onmousemove=function(ev){
var l=ev.clientX-disX;
var t=ev.clientY-disY;
oDiv.style.left=l+'px';
oDiv.style.top=t+'px';
};
document.onmouseup=function(){
document.onmousemove=null;
document.onmouseup=null;
};
};
});
     //使用
     <div v-drag></div>

  自定义元素指令:(用处不大) 后面有组件代替
    Vue.elementDirective('zns-red',{
      bind:function(){
        this.el.style.background='red';
      }
    });

    使用:

    <zns-red></zns-red>

自定义键盘信息    

  vue提供的:

    @keydown.up
    @keydown.enter

  自定义例如@keydown.a/b/c....    用on绑定

    Vue.directive('on').keyCodes.ctrl=17;
    Vue.directive('on').keyCodes.myenter=13;

监听数据变化

  vm.$el/$mount/$options/....

  vm.$watch(name,fnCb); //浅度 name是数据的名字,fnCb是回调函数
  vm.$watch(name,fnCb,{deep:true}); //深度监视 引用类型的数据

2、vueJs基础知识02的更多相关文章

  1. MongoDB基础知识 02

    MongoDB基础知识 02 6 数据类型 6.1 null : 表示空值或者不存在的字段 {"x":null} 6.2 布尔型 : 布尔类型只有两个值true和false {&q ...

  2. day03-MySQL基础知识02

    MySQL基础知识02 4.CRUD 数据库CRUD语句:增(create).删(delete).改(update).查(Retrieve) Insert 语句 (添加数据) Update 语句(更新 ...

  3. vue面试题整理vuejs基础知识整理

    初级参考 1.v-show 与 v-if 区别 v-show 是css隐藏,v-if是直接销毁和创建,所以频繁切换的适合用v-show 2.计算属性和 watch 的区别 计算属性是自动监听依赖值的变 ...

  4. AI-图像基础知识-02

    目录 图像坐标系 图像数字化 图像坐标系     在前面的数据标注文章中讲述如何进行标注,而标注后会保留4个坐标点,那么这些坐标点如何表示在图片中的位置?要表示一个点或图形的位置,就需要涉及到坐标系的 ...

  5. .NET基础知识(02)-拆箱与装箱

    装箱和拆箱几乎是所有面试题中必考之一,看上去简单,就往往容易被忽视.其实它一点都不简单的,一个简单的问题也可以从多个层次来解读. 常见面试题目: 1.什么是拆箱和装箱? 2.什么是箱子? 3.箱子放在 ...

  6. 6、vueJs基础知识06

    vue动画 transition 之前1.0版本是以 属性的形式展示的 <p transition="fade"></p> .fade-transition ...

  7. 1、vueJs基础知识01

    vue是框架,vue.js是vue框架的核心js库 库:是一个封装好的特定的方法的集合,提供给开发者使用,库没有控制权,控制权在使用者手中.代表:jQuery.underscore.util 框架:框 ...

  8. 3-15 JS基础知识02

    一.For循环: For (var i = 0;  i <= 10;  i++){ 循环体: } 注意:For循环中的表达式是可以省略的,省略以后是个死循环. odd:奇数   even : 偶 ...

  9. Android基础知识02—安卓日志工具LogCat的五种方法

    --------Android 02-------- >>> Android的日志工具LogCat    五个方法,记录信息的级别不一样,从低到高为:    1.Log.v()-日志 ...

随机推荐

  1. 在SQL Server中,为何都建议禁止 VIA 协议,VIA协议具体内容是什么?

    在SQL Server 在SQL Server中,为何都建议禁止 VIA 协议,VIA协议具体内容是什么? 中,为何都建议禁止 VIA 协议,VIA协议具体内容是什么? 在SQL Server中,为何 ...

  2. python day 9: xlm模块,configparser模块,shutil模块,subprocess模块,logging模块,迭代器与生成器,反射

    目录 python day 9 1. xml模块 1.1 初识xml 1.2 遍历xml文档的指定节点 1.3 通过python手工创建xml文档 1.4 创建节点的两种方式 1.5 总结 2. co ...

  3. JAVASCRIPT中装饰器是什么(装修)

    装饰器是什么? 解码器是将另一段代码包装在一个代码中的简单方法. 这个概念类似于你以前听说过的功能成分和高阶成分. 这在许多情况下都被使用过,也就是说,成都装修公司简单地将一个函数包装到另一个函数中: ...

  4. mysql 存储过程、视图---创建、调用、删除

    之前一直用的是Sql Server数据库,最近偶然机会接触到mysql.这里总结了关于mysql 存储过程.视图的“创建.调用.删除”示例 ============================== ...

  5. 深入理解React 组件状态(State)

    React 的核心思想是组件化的思想,应用由组件搭建而成,而组件中最重要的概念是State(状态),State是一个组件的UI数据模型,是组件渲染时的数据依据. 一. 如何定义State 定义一个合适 ...

  6. [AIR] NativeExtension在IOS下的开发实例 --- 新建项目测试ANE(四)

    来源:http://bbs.9ria.com/thread-102043-1-1.html 通过前面的努力,好了,我们终于得到了一个ANE文件了.下面我们开始新建一个Flex Mobile项目做一下测 ...

  7. 【转载】用户通过WEB方式更改AD域帐户密码

    用户改自己的域帐户密码一般通过以下几种方式: 加域的PC,用户直接按:Ctrl+Alt+Del键,点击:更改密码 通过exchange owa更改密码 让管理员重置密码 除了以上方式外,很多企业通过开 ...

  8. C++(三十九) — 主函数中增加调试信息

        程序调试技术: (1)阅读程序,静态代码复查: (2)“cout大法” (3)使用开发工具,断点 int main() { TShape s(lu, lu); cout << __ ...

  9. linux远程工具

    实际工作中,linux系统都不会在我们自己的电脑上,linux系统安装在机房的服务器上,我们操作linux不可能跑到机房去,所以我们需要有一个工具,能在公司通过网络远程连接到机房的linux服务器上 ...

  10. P1903 [国家集训队]数颜色 / 维护队列(带修莫队)

    题目描述: 墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问.墨墨会向你发布如下指令: 1. Q L R代表询问你从第L支画笔到第R支画笔中共有几种不同颜色的画笔. ...