Vue的Options
el:挂载点
与$mount有替换关系
new Vue({
el: "#app"
});
new Vue({}).$mount('#app')
注:被你选为挂载点的那个元素,如果在index.html里那个元素里面本来就有内容,在渲染时会消失(网速慢可以看到),被这个vue实例的对应内容所覆盖。
data:内部数据
支持对象和函数,优先用函数
new Vue({
//优先使用函数
data() {
return {
n: 0,
}
}
}).$mount("#app");
注:能写函数尽量写函数,否则有可能有BUG;
methods:方法
事件处理函数
new Vue({
data (){
return{
n:0
}
},
template:`
<div class="red">
{{n}}
<button @click="add">+1</button>
</div>
`,
//add必须写到methods里面
methods:{
add(){
this.n+=1
}
}
}).$mount('#app')
普通函数:methods代替filter
import Vue from "vue";
Vue.config.productionTip = false;
new Vue({
data() {
return {
n: 0,
array: [1, 2, 3, 4, 5, 6, 7, 8]
};
},
template: `
<div class=red>
{{n}}
<button @click="add">+1</button> //事件处理函数
<hr>
{{filter()}} //普通函数(JS的filter直接在视图里调用,每一次更新渲染都会调用一次)
</div>
`,//主动在模板里面调用
methods: {
add() {
this.n += 1; //事件处理函数
},
filter() {
return this.array.filter(i => i % 2 === 0); //普通函数
}
}
}).$mount("#app");
components:方法
使用Vue组件,注意大小写
(建议用法) 模块化:
- 新建一个vue文件Demo.vue,这个vue文件就是一个组件
- 在main.js中引入这个vue文件
- 在vue实例的components中声明这是我要用的组件,并且命名为Demo
- 这样在这个Vue实例的template中就可以直接使用这个组件
<Demo/>
import Vue from "vue";
import Demo from "./Demo.vue"; //引入这个vue文件 ---文件名最好小写 组件名最好大写
Vue.config.productionTip = false;
new Vue({
components: {
Demo //在vue实例的components中声明这是我要用的组件,并且命名为Demo
//如果组件名就叫Demo,即Demo:Demo,那就写Demo --ES6缩写
//components: {Demo},
},
data() {
return {
n: 0
};
},
template: `
<div class=red>
{{n}}
<button @click="add">+1</button>
<Demo/> //这样在这个Vue实例的template中就可以直接使用这个组件`<Demo/>`
</div>
`,
methods: {
add() {
this.n += 1;
},
}
}).$mount("#app");
四个钩子
created -- 实例出现在内存中后触发
created(){
debugger
console.log('这玩意出现在内存中')
},
mounted-- 实例出现在页面中(挂载了)后触发
mounted(){
debugger
console.log('这玩意儿已出现在页面中')
},
updated -- 实例更新了后触发
updated(){
console.log('更新了')
console.log(this.n)
},
//当你+1的时候,能证明他在更新的时候触发,还可以拿到最新的n
destroyed -- 实例从页面和内存中消亡了后触发
props:外部属性
外部来传值
message="n"传入字符串:message="n"传入vue实例的this.n数据:fn="add"传入vue实例的this.add函数
Vue的Options的更多相关文章
- Laravel + Vue 之 OPTIONS 请求的处理
问题: 在 Vue 对后台的请求中,一般采用 axios 对后台进行 Ajax 交互. 交互发生时,axios 一般会发起两次请求,一次为 Options 试探请求,一次为正式请求. 由此带来的问题是 ...
- Vue Resource root options not used?
I specify a root options in my Vue-Resource in my main.js file, but when I do the request, it does n ...
- Vue.js——使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用
概述 上一篇我们介绍了如何使用vue resource处理HTTP请求,结合服务端的REST API,就能够很容易地构建一个增删查改应用.这个应用始终遗留了一个问题,Web App在访问REST AP ...
- Vue.js——vue-resource全攻略
概述 上一篇我们介绍了如何将$.ajax和Vue.js结合在一起使用,并实现了一个简单的跨域CURD示例.Vue.js是数据驱动的,这使得我们并不需要直接操作DOM,如果我们不需要使用jQuery的D ...
- vue.js插件使用(01) vue-resource
本文的主要内容如下: 介绍vue-resource的特点 介绍vue-resource的基本使用方法 基于this.$http的增删查改示例 基于this.$resource的增删查改示例 基于int ...
- vue+webpack项目实战
概述 -- 项目中会用到的插件 vue-router vue-resource 打包工具 webpack 依赖环境 node.js start 安装vue开发的模板 # 全局安装 vue-cli $ ...
- Vue 浅谈前端js框架vue
Vue Vue近几年来特别的受关注,三年前的时候angularJS霸占前端JS框架市场很长时间,接着react框架横空出世,因为它有一个特性是虚拟DOM,从性能上碾轧angularJS,这个时候,vu ...
- 使用Vue快速开发单页应用
本文所涉及代码全在vue-cnode 单页应用,即在一个页面集成系统中所有功能,整个应用只有一个页面.因为路由的控制在前端,单页面应用在页面切换时比传统页面更快,从而在前端体验更好. 将逻辑从后端转移 ...
- vue前后台数据交互vue-resource文档
地址:https://segmentfault.com/a/1190000007087934 Vue可以构建一个完全不依赖后端服务的应用,同时也可以与服务端进行数据交互来同步界面的动态更新. Vue通 ...
随机推荐
- phpbasic
<!DOCTYPE html> <html> <body> <?php // 这是 PHP 单行注释 /* 这是 PHP 多行 注释 */ ?> < ...
- Android性能优化----卡顿优化
前言 无论是启动,内存,布局等等这些优化,最终的目的就是为了应用不卡顿.应用的体验性好坏,最直观的表现就是应用的流畅程度,用户不知道什么启动优化,内存不足,等等,应用卡顿,那么这个应用就不行,被卸载的 ...
- Fortify Audit Workbench 笔记 Dynamic Code Evaluation: Code Injection
Dynamic Code Evaluation: Code Injection Abstract 在运行时中解析用户控制的指令,会让攻击者有机会执行恶意代码. Explanation 许多现代编程语言 ...
- PHP is_string() 函数
is_string() 函数用于检测变量是否是字符串. PHP 版本要求: PHP 4, PHP 5, PHP 7高佣联盟 www.cgewang.com 语法 bool is_string ( mi ...
- Hadoop的序列化
普通的序列化需要将类型的继承结构也序列化,但是hadoop只序列化对象本身,忽略继承关系,因为hadoop中传输的自定义类型一般都是简单的类型,这样可以减少传输的序列化数据,降低网络带宽的使用.
- 用大白话解释什么是Socket
好好学习,天天向上 本文已收录至我的Github仓库DayDayUP:github.com/RobodLee/DayDayUP,欢迎Star,更多文章请前往:目录导航 前言 我在去年就学习过Java中 ...
- RNN神经网络模型原理
1. 前言 循环神经网络(recurrent neural network)源自于1982年由Saratha Sathasivam 提出的霍普菲尔德网络. 传统的机器学习算法非常依赖于人工提取的特征, ...
- java交换两个参数值的四种方法
第一种:添加中间变量,算是最经典最简易的一种了. //添加一个中间变量 int x = 1, y = 2; int z; z = x;x = y;y = z; System.out.println(x ...
- 《RabbitMQ》如何保证消息不被重复消费
一 重复消息 为什么会出现消息重复?消息重复的原因有两个:1.生产时消息重复,2.消费时消息重复. 1.1 生产时消息重复 由于生产者发送消息给MQ,在MQ确认的时候出现了网络波动,生产者没有收到确认 ...
- Web 开发必须掌握的三个技术:Token、Cookie、Session
在Web应用中,HTTP请求是无状态的.即:用户第一次发起请求,与服务器建立连接并登录成功后,为了避免每次打开一个页面都需要登录一下,就出现了cookie,Session. Cookie Cookie ...