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. (转) 嵌入式 Linux 利用 udev 实现自动检测挂载U盘

    本文链接:https://blog.csdn.net/cfl927096306/article/details/95180940 udev配置文件是/etc/udev/udev.conf,也许长这样: ...

  2. C#方法(用法,参数)

    方法:是一种用于实现可以由对象或类执行的计算或操作的成员,是一个已命名的语句集.方法就是把一些相关的语句组织到一起,用来执行一个任务的语句块.比如每个C#程序至少带一个main函数 1.格式:修饰符  ...

  3. App客户端性能测试点总结

    一.内存 测试范围1. 空闲状态下的应用内存消耗情况2. 中等规格状态下的应用内存消耗情况3. 满规格状态下的应用内存消耗情况4. 应用内存峰值情况5. 应用内存泄露情况6. 应用是否常驻内存7. 压 ...

  4. SVN_01概念

    客戶端TortoiseSVN  服务器端VIsualSVN SVN是Apache Subversion的缩写,是一个开放源代码的版本控制系. 这些数据放置在一个中央资料库(repository)中.这 ...

  5. C# 卡控时间输入

    int hour = (int.Parse(DateTime.Now.Hour.ToString())) * 60;        int minute = int.Parse(DateTime.No ...

  6. django css

    1. settings.py最下方STATIC_URL下面补上 STATIC_URL = '/home/wjg/code/wblog/static/' STATIC_ROOT = os.path.jo ...

  7. SpringMVC源码解读

    1.SpringMVC简介 SpringMVC框架是围绕一个DispatherServlet来设计的.这个Servlet会把请求分发给各个处理器,并支持可配置的处理器映射.视图渲染.本地化.时区与主题 ...

  8. 图片预先加载 preloadjs

    <body><div class="loading"> <div class="progress"></div> ...

  9. jquery事件委托详解

    jQuery事件委托处理流程 上一章分析jQuery.event.add的时候已经分析了事件绑定,再把绑定的部分源码抽出来 if ( !(eventHandle = elemData.handle) ...

  10. pycharm git 用法总结

    一.配置git 二.登录GitHub账号 三.创建git respository 四.提交文件 五.共享给GitHub 六.修改文件push到版本库 七.从版本库checkout 项目