var obj = {}
Object.defineProperty(obj, 'msg', {
// 设置 obj.msg = "1" 时set方法会被系统调用 参数分别是设置后和设置前的值
set: function (newVal, oldVal) { },
// 读取 obj.msg 时get方法会被系统调用
get: function ( newVal, oldVal ) {}
})

Vue双向绑定

语法:v-bind:title=“msg”

简写::title=“msg”

<!-- 完整语法 -->
<a v-bind:href="url"></a>
<!-- 缩写 -->
<a :href="url"></a>
<!-- 完整语法 -->
<a v-on:click="doSomething"></a>
<!-- 缩写 -->
<a @click="doSomething"></a>

key属性

-class和style

提升性能:v-pre

提升性能:v-once

过滤器 filter

文本数据格式化

{{}}和 v-bind 表达式

全局过滤器

Vue.filter('filterName', function (value) {
// value 表示要过滤的内容
})

局部过滤器

按键值修饰符

watch是一个对象,键是需要观察的表达式,值是对应回调函数

文本数据格式化:

filter

全局过滤器

局部过滤器

显示的内容由过滤器的返回值决定

Vue.filter('filterName',function(value){
}
<div>{{ dataStr | date }}</div>
<div>{{ dateStr | date('YYYY-MM-DD hh:mm:ss') }}</div> <script>
Vue.filter('date',function(value,format){
// value 要过滤的 字符串内容
// format 过滤器的参数
})
</script>

局部过滤器

{
data: {},
// 通过 filters 属性创建局部过滤器
filters: {
filterName: function(value, format){}
}
}

修饰键,鼠标按键修饰符

@keyup.13="submit"
@keyup.enter="add" Vue.config.keyCodes.f2 = 113
@keyup.enter.f2 = "add"

监视数据变化

watch

watch是一个对象,键是表达式,值是回调函数

new Vue({
data: {
a: 1,
b: {
age: 100
}
},
watch: {
a: function(val, oldVal){
// val 表示当前值
// oldVal 表示旧值
},

计算属性:

var vm = new Vue({
el: '#app',
data: {
firstname: '',
lastname: ''
},
computed: {
fullname() {
return this.firstname + this.lastname
}
}
})

computed中的属性不能与data中的属性同名,否则会报错

组件的生命周期函数

事件

钩子函数 - beforeCreate() - 实例初始化之后

钩子函数 - created() - 发送请求获取数据

钩子函数 - beforeMounted() - 在挂载开始之前被调用

钩子函数 - mounted() - vue实例已经挂载到页面中

钩子函数 - beforeUpdated()

钩子函数 - updated()

钩子函数 - beforeDestroy()

钩子函数 - destroyed()

axios

封装ajax,用来发送请求,异步获取数据

基于Promise的HTTP客户端,用于浏览器和node.js

https://github.com/axios/axios

// 在浏览器中使用,直接引入js文件使用下面的GET/POST请求方式即可
// 1 引入 axios.js
// 2 直接调用axios提供的API发送请求
created: function () {
axios.get(url)
.then(function(resp) {})
} ---
// 配合 webpack 使用方式如下:
import Vue from 'vue'
import axios from 'axios'
// 将 axios 添加到 Vue.prototype 中
Vue.prototype.$axios = axios ---
// 在组件中使用:
methods: {
getData() {
this.$axios.get('url')
.then(res => {})
.catch(err => {})
}
} ---
// API使用方式: axios.get(url[, config])
axios.post(url[, data[, config]])
axios(url[, config])
axios(config)
const url = 'http://'

axios.get('/user?id=')
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
}); axios.get('/user', {
params: {
id: 123
}
})

组件

父组件到子组件

props

$on():绑定自定义事件

内容分发

通过 标签指定内容展示区域


请点赞!因为你的鼓励是我写作的最大动力!

吹逼交流群:711613774

(2)打鸡儿教你Vue.js的更多相关文章

  1. (29)打鸡儿教你Vue.js

    web阅读器开发 epub格式的解析原理 Vue.js+epub.js实现一个简单的阅读器 实现阅读器的基础功能 字号选择,背景颜色 有上一页,下一页的功能 设置字号,切换主题,进度按钮 电子书目录 ...

  2. (26)打鸡儿教你Vue.js

    weex框架的使用 1.weex开发入门 2.weex开发环境搭建 3.掌握部分weex组件模块 4.了解一些vue基本常见语法 5.制作一个接近原生应用体验的app weex介绍 安装开发环境 We ...

  3. (22)打鸡儿教你Vue.js

    vue.js 单页面,多页面 Vue cli工具 复杂单页面应用Vue cli工具 交互设计,逻辑设计,接口设计 代码实现,线上测试 git clone,git int 创建分支,推送分支,合并分支 ...

  4. (21)打鸡儿教你Vue.js

    组件化思想: 组件化实现功能模块的复用 高执行效率 开发单页面复杂应用 组件状态管理(vuex) 多组件的混合使用 vue-router 代码规范 vue-router <template> ...

  5. (19)打鸡儿教你Vue.js

    了解vue2.x的核心技术 建立前端组件化的思想 常用的vue语法 vue-router,vuex,vue-cli 使用vue-cli工具 Vue框架常用知识点 vue核心技术 集成Vue 重点看,重 ...

  6. (18)打鸡儿教你Vue.js

    介绍一下怎么安装Vue.js vue.js Vue 不支持 IE8 及以下版本,因为 Vue 使用了 IE8 无法模拟的 ECMAScript 5 特性. Vue.js是一个渐进的,可逐步采用的Jav ...

  7. (17)打鸡儿教你Vue.js

    vue-router <a class="list-group-item" v-link="{ path: '/home'}">Home</a ...

  8. (15)打鸡儿教你Vue.js

    组件化vue.js 组件单向绑定 组件双向绑定 组件单次绑定 创建组件构造器 注册组件 使用组件 Vue.extend() Vue.component() 使用组件 <div id=" ...

  9. (13)打鸡儿教你Vue.js

    一小时复习 vue.js是一个JavaScriptmvvm库,是以数据驱动和组件化的思想构建的,相比angular.js,vue.js提供了更加简洁,更加容易理解的api,如果习惯了jquery操作d ...

  10. (12)打鸡儿教你Vue.js

    组件 语法格式如下: Vue.component(tagName, options) <tagName></tagName> <div id="app" ...

随机推荐

  1. 案例(1)-- OOM异常

    问题描述: 1.系统在执行某个操作时,必现OOM异常. 问题的定位: 1.排查代码,未发现问题. 2.在虚拟机启动时,添加参数:-XX:+HeapDumpOnOutOfMemoryError(当发生o ...

  2. hdu 2643 rank 第二类斯特林数

    题意:给定n个人,要求这n个人的所有可能排名情况,可以多个人并列(这个是关键). 题解:由于存在并列的问题,那么对于n个人,我们最多有n个排名,枚举一下1~n,累加一下就好.(注意这里是变种的斯特林数 ...

  3. sva 基础语法

    断言assertion被放在verilog设计中,方便在仿真时查看异常情况.当异常出现时,断言会报警.一般在数字电路设计中都要加入断言,断言占整个设计的比例应不少于30%.以下是断言的语法: 1. S ...

  4. 关于 false sharing

    问题来源 在多线程操作中,每个线程对操作对象都会有单独的缓存,最后将缓存同步到内存上,不加锁的话会导致数据缺乏同步出现错误,如果只是简单地加锁,性能就会飞速下降 解法 spacing &&am ...

  5. windows + Eclipse

    https://www.eclipse.org/downloads/index-packages.php 下载好后是一个压缩文件,解压并放到相要存放软件的目录,双击打开解压后的目录下eclipse.e ...

  6. Snort Rule Infographic

    Snort Rule Infographic Official Documentation Snort FAQ  Snort Team / Open Source Community Snort Us ...

  7. md5 helper

    public static string ToMD5Hash(this string str) { if (string.IsNullOrEmpty(str)) return null; return ...

  8. 移动端调试工具Vconsole

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. linux操作常用命令

    此篇文章是根据自己经常使用的命令进行记录备忘,不断更新 防火墙(centos7) 永久开放某个端口号: firewall-cmd --zone=public --add-port=8080/tcp - ...

  10. python之反射机制与callattr()、issubclass()、isinstance、type()相关

    一.反射机制 * 反射可以理解为 通过字符串的形式,动态导入模块: 利用字符串的形式,在对象(模块)中操作(查找/获取/删除/添加)成员,是一种基于字符串的事件驱动! 反射机制的内置函数 # hasa ...