vue比jq好处
1jq 频繁操作dom 增加了性能消耗 vue 模拟dom 从内存中拿
2jq 数据没有统一管理 vue 统一管理数据
3vue 组件开发可以提取出公共的html或js
 
mv*好处
mvc
m model 模型 操作数据
v view 视图 展示静态资源
c controller 控制器 逻辑
 
mvp
m model 模型 操作数据
v view 视图 展示静态资源
p 主持人(上面的mvc 中 mv可以互相调用所以改成 mvp让他不能互相调用)
 
mvvm
m model 模型 操作数据
v view 视图 展示静态资源
vm 监听m数据改变 同步到v
 
vue
插值 在HTML插入数据
文本 {{data 的建}}
v-html {{data的建}}可以解析html代码
 
指令 通过v-开头的命令显示数据
事件 v-on:事件类型 和 @事件类型
动态参数 动态标签的属性值 bind:属性=“data建” 和:属性=‘data建“
 
v-for 循环
v-for = “item in 建”
v-for = “(item,index) in 建”
 
 
v-if = “判断条件”不成立的删除
v-show = “判断条件“不成立的隐藏
v-if = “条件”
v-else-if = “条件”
v-else
 
 
v-on:事件类型=‘函数’
@事件类型=‘函数’
事件修饰符
stop阻止冒泡
prevent阻止默认动作
capture打乱冒泡
self阻止冒泡自身
once一次事件
passire 性能
 
键盘修饰符
enter 回车
delete 删除
space 空格
 
 
代码片段的好处
方便快捷搭建vue的mvvm模式的格式
 
输入绑定/双向绑定
比之jq的添加id属性在获取其内容方便了不少
他是让m的数据同步到v
v的数据同步到m
 
 
class和style绑定
字符串 :class=“classOne” classOne = "class名"
数组的 :class=“classArr” classArr =['class名1',‘class名2’]
对象的 :class=“classObj” classObj = {class名:布尓类型,class名:布尓类型}
 
todo 是待完成
todolist 是待完成清单
 
混入(mixin):减少代码冗余,提高代码复用性
语法
 
// 全局不用激活直接用
Vue.mixin({
data // 函数里面返回数据对象
methods
//..
})
 
// 局部需要在new Vue中通过mixins激活
let 变量名 = {
data // 函数里面返回数据对象
methods
//...
}
new Vue({
// ...
mixins: [变量名1,...,变量名n] // 脚下留心:变量名不加引号
})
 
 
 
什么是组件:就是一个文件,后期里面放HTML、CSS、JS 刚好是一个页面
组件好处:可以减少代码冗余,便于后期维护
// 全局(定义好了就可以调用)
Vue.component(标识,{
// 通过template键 来 声明HTML代码
template: 1直接写HTML(不推荐), 2写CSS选择器 视图里面通过template来定义选择器
data 是方法里面返回数据对象
methods
watch
//...
})
// 局部
new Vue({
// ...
// 声明组件 可以写多个 +s
components: {
标识: {
// 通过template键 来 声明HTML代码
template: 1直接写HTML(不推荐), 2写CSS选择器 视图里面通过template来定义选择器
data 是方法里面返回数据对象
methods
watch
//...
},
//....
}
})
 
最初ajax 瑕疵:1-异步回调地狱,2-语法麻烦,3-语法有兼容性问题
后来jq 明确:基于ajax封装
好处:语法更简单、解决兼容性问题
瑕疵:异步回调地狱
 
官方是如何解决异步回调地狱的:promise
 
最后:fetch 官方封装的 不需要导入库直接使用(fetch = XMLHttpRequest + promise)
 
 
明确:vue 以前 vue-resource(官方的 后来官方推荐别用 推荐你用axios 第三方的)
 
相同点:
1.都是项目用来发送异步请求的
2.都是基于XMLHttpRequest + promise
不同点:
1- axios是第三方封装的,fetch是官方封装的
2- axios更强(并发&拦截器 -> 写项目说)
3- fetch每次都需要then res.json()
 
 
axios({
url
method
headers
params get
data post
}).then().catch()
 
fetch(请求地址,{
method
headers
body
}).then(res=>res.json()).then().catch()
 
 
 
1计算属性(直接通过函数名调用) 侦听器(不能调用 借助模型调用)
2计算属性(有缓存) 侦听器(没有)
 
3计算属性(一个【键/函数名】监控【n个数据变化 用了几个就监控几个】)
侦听器 (一个【键/函数名】监控【一个数据变化】)
 
 
普通方法:1-事件触发用,2-减少视图冗余用
计算属性:普通方法单个调用影响性能,用计算属性
侦听器:监控模型数据变化,并且写其他逻辑 (一般网站搜索)
 
区别
相同点:都是为了优化项目
不同点:
1-计算属性(函数名不叫小括号) 侦听器(不能调用 需要借助模型)
2-计算属性(有缓存) 侦听器(没有)
3-计算属性(一个键可以监控n个模型数据) 侦听器(一个键只能监控一个)

vue基础api的更多相关文章

  1. Vue基础二之全局API、实例属性和全局配置,以及组件进阶(mixins)的详细教程(案列实现,详细图解,附源码)

    本篇文章主要是写Vue.directive().Vue.use()等常用全局API的使用,vm.$props.vm.$options.vm.$slots等实例属性的使用,以及Vue全局配置.组件的mi ...

  2. 从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 二十║Vue基础终篇:传值+组件+项目说明

    缘起 新的一天又开始啦,大家也应该看到我的标题了,是滴,Vue基础基本就到这里了,咱们回头看看这一路,如果你都看了,并且都会写了,那么现在你就可以自己写一个Demo了,如果再了解一点路由,ajax请求 ...

  3. Vue基础以及指令

    Vue 基础篇一   一.Vue框架介绍 之前大家学过HTML,CSS,JS,JQuery,Bootstrap,现在我们要学一个新的框架Vue~ Vue是一个构建数据驱动的web界面的渐进式框架. 目 ...

  4. Vue 1-- ES6 快速入门、vue的基本语法、vue应用示例,vue基础语法

    一.ES6快速入门 let和const let ES6新增了let命令,用于声明变量.其用法类似var,但是声明的变量只在let命令所在的代码块内有效. { let x = 10; var y = 2 ...

  5. vue基础知识之vue-resource/axios

    Vue基础知识之vue-resource和axios(三)   vue-resource Vue.js是数据驱动的,这使得我们并不需要直接操作DOM,如果我们不需要使用jQuery的DOM选择器,就没 ...

  6. Vue(1)- es6的语法、vue的基本语法、vue应用示例,vue基础语法

    一.es6的语法 1.let与var的区别 ES6 新增了let命令,用来声明变量.它的用法类似于var(ES5),但是所声明的变量,只在let命令所在的代码块内有效.如下代码: { let a = ...

  7. Vue基础知识之vue-resource和axios

    Vue基础知识之vue-resource和axios  原文链接:http://www.cnblogs.com/Juphy/p/7073027.html vue-resource Vue.js是数据驱 ...

  8. [前端] VUE基础 (6) (v-router插件、获取原生DOM)

    一.v-router插件 1.v-router插件介绍 v-router是vue的一个核心插件,vue+vue-router主要用来做SPA(单页面应用)的. 什么是SPA:就是在一个页面中,有多个页 ...

  9. Vue基础语法-数据绑定、事件处理和扩展组件等知识详解(案例分析,简单易懂,附源码)

    前言: 本篇文章主要讲解了Vue实例对象的创建.常用内置指令的使用.自定义组件的创建.生命周期(钩子函数)等.以及个人的心得体会,汇集成本篇文章,作为自己对Vue基础知识入门级的总结与笔记. 其中介绍 ...

随机推荐

  1. 深入理解Java内存模型中的虚拟机栈

    深入理解Java内存模型中的虚拟机栈 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域,这些区域都会有各自的用途,以及创建和销毁的时间,有的区域会随着虚拟机进程的启 ...

  2. JAVA并发同步互斥实现方式总结

    大家都知道加锁是用来在并发情况防止同一个资源被多方抢占的有效手段,加锁其实就是同步互斥(或称独占)也行,即:同一时间不论有多少并发请求,只有一个能处理,其余要么排队等待,要么放弃执行.关于锁的实现网上 ...

  3. SmtpStatusCode Enum

  4. 51Nod 1091 线段的重叠 (贪心)

    X轴上有N条线段,每条线段包括1个起点和终点.线段的重叠是这样来算的,[10 20]和[12 25]的重叠部分为[12 20]. 给出N条线段的起点和终点,从中选出2条线段,这两条线段的重叠部分是最长 ...

  5. IT人的乐趣与价值

    it人员“偷摸”实现个人潜在价值的一些方向.    1.做一名站长.现在做一个个人博客或者CMS系统,都可以从网上找到相关开源的程序.花十几块钱申请个域名,再花个百来块租个空间,你就具备了当站长的外界 ...

  6. 【PAT甲级】1118 Birds in Forest (25分)(并查集)

    题意: 输入一个正整数N(<=10000),接着输入N行数字每行包括一个正整数K和K个正整数,表示这K只鸟是同一棵树上的.输出最多可能有几棵树以及一共有多少只鸟.接着输入一个正整数Q,接着输入Q ...

  7. Learn from Niu

    创新的源头来自于思考,尤其是深度思考: 1. 读博过程必然会经历痛苦,思考,深度思考这么一个过程,其中思考是最重要的,尤其是深度思考. 思考之后才是创新. 2. 借用其他的知识弥补这个领域的知识,不简 ...

  8. linux - mysql - 新建用户

    新建用户 使用如下命令创建一个用户名和密码分别为"myuser"和"mypassword"的用户,localhost在User表里是Host字段(主机). my ...

  9. HTML表格显示的笔记

    有时需要显示的复杂表头 如图所示  <table id="" cellpadding="0" cellspacing="0" bord ...

  10. 字符串匹配算法--暴力匹配(Brute-Force-Match)C语言实现

    一.前言 暴力匹配(Brute-Force-Match)是字符串匹配算法里最基础的算法,虽然效率比较低,但胜在方便理解,在小规模数据或对时间无严格要求的情况下可以考虑. 二.代码 #include & ...