Vue.js学习笔记--1.基础HTML和JS属性的使用
整理自官网教程 -- https://cn.vuejs.org/
1. 在HTML文件底部引入Vue
<script src="https://cdn.jsdelivr.net/npm/vue"></script>
2. 基础HTML标签和属性
<div id="app">
<!--v-bind:title 可缩写为 :title -->
<!--添加v-once属性时,能执行一次性地插值 -->
<!-- v-html="xx"可插入HTML代码 -->
<span v-bind:title="info">
<!-- 支持JS单个表达式,不能访问用户定义的全局变量 -->
{{ message }}
</span>
<!--v-on:click 可缩写为 @click -->
<button v-on:click="reverseMessage">逆转消息</button>
<p>Computed reversed message: "{{ reversedMessage }}"</p>
<p v-if="seen">切换元素显示</p>
<ol>
<li v-for="todo in todos">
{{ todo.text }}
</li>
</ol>
<!-- v-model实现表单输入和后台状态之间的双向绑定 -->
<input v-model="message">
</div>
3. 基础JS属性
var app = new Vue({
el:'#app',
data:{ //预设在data内的属性才是响应式的
message:'Hello Vue!',
info:'Show title.',
seen:true,
todos: [
{ text: 'Learn JavaScript' },
{ text: 'Learn Vue' },
{ text: 'Build something awesome' }
],
question: '',
answer: 'I cannot give you an answer until you ask a question!'
},
methods: { //Vue实例内方法函数
reverseMessage: function () {
this.message = this.message.split('').reverse().join('')
}
},
computed: { //计算属性,基于其依赖进行缓存,依赖变化时才重新求值
reversedMessage: function() { //默认方法为reversedMessage的getter(),也可设置setter()方法
return this.message.split('').reverse().join('')
}
},
watch: { //侦听属性,适合在数据变化时需要执行异步或开销较大时
// 如果 `question` 发生改变,这个函数就会运行
question: function (newQuestion, oldQuestion) {
this.answer = 'Waiting for you to stop typing...'
//调用其它处理答案的方法
}
},
created: function () { //vue实例中生命周期钩子函数之一
console.log('tips is:' + this.tips)
}
})
4. 备注
a. Vue实例中带有前缀$的属性和方法可将其与用户定义的分开,如$data,$watch等。
b. 利用freeze()函数可阻止修改现有data,用法如下:
var obj = {
foo: 'bar'
}
Object.freeze(obj);
//...
//vue实例中设置
//...
data: {
obj
}
Vue.js学习笔记--1.基础HTML和JS属性的使用的更多相关文章
- Node.js 学习笔记(一)--------- Node.js的认识和Linux部署
Node.js 一.Node.js 简介 简单的说 Node.js 就是运行在服务端的可以解析并运行 JavaScript 脚本的软件. Node.js 是一个基于Chrome JavaScript ...
- Vue.js学习笔记--2.基础v-指令
整理自官网教程 -- https://cn.vuejs.org/ 1. v-bind绑定Class与Style a. 绑定Class 语法:v-bind:class="{classname: ...
- JS学习笔记1_基础与常识
1.六种数据类型 5种基础的:Undefined,Null,Boolean,Number,String(其中Undefined派生自Null) 1种复杂的:Object(本质是一组无序键值对) 2.字 ...
- Vue.js学习笔记 第六篇 内置属性
computed属性 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> &l ...
- JS学习笔记:(三)JS执行机制
首先我们先明确一点:JavaScript是一门单线程语言.单线程也就是说同一时间只能执行一个任务,所有的任务都必须排队顺序执行.那么如果一个任务耗时很长,阻塞了其它任务的执行,就会给用户造成不友好的体 ...
- vue.js 学习笔记3——TypeScript
目录 vue.js 学习笔记3--TypeScript 工具 基础类型 数组 元组 枚举 字面量 接口 类类型 类类型要素 函数 函数参数 this对象和类型 重载 迭代器 Symbol.iterat ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Vue.js学习笔记(2)vue-router
vue中vue-router的使用:
- Vue.js学习笔记:在元素 和 template 中使用 v-if 指令
f 指令 语法比较简单,直接上代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " ...
随机推荐
- 深度学习主机环境配置: Ubuntu16.04+Nvidia GTX 1080+CUDA8.0
不多说,直接上干货! 深度学习主机环境配置: Ubuntu16.04+Nvidia GTX 1080+CUDA8.0
- 解决javah生成.h头文件找不到找不到android.support.v7.app.AppCompatActivity的问题
问题描写叙述: 在使用Android Studio进行JNI开发时,须要使用javah生成C或C++的头文件,可是可能会遇到: 错误: 无法訪问android.support.v7.app.AppCo ...
- Tomcat 安装错误
安装tomcat时,遇到"failed to install tomcat6 service check your settings and permissions"的问题 安装时 ...
- HEX文件格式学习笔记
这也是一篇学习摘抄:原文地址:http://blog.csdn.net/syrchina/article/details/7004998 为了编写一个可以按照自己的要求进行ISP的程序, ...
- 替换Android自带apk【转】
本文转载自:http://www.voidcn.com/article/p-gonowdjh-vz.html 安卓自带的app放在/system/app/下,当我们想要替换这些应用时可以参考如下步骤: ...
- Cmake的介绍和使用 Cmake实践【转】
本文转载自:http://www.cppblog.com/Roger/archive/2011/11/17/160368.html Cmake的介绍和使用 Cmake实践 Cmake优点: 1. ...
- POJ3164 Command Network —— 最小树形图
题目链接:https://vjudge.net/problem/POJ-3164 Command Network Time Limit: 1000MS Memory Limit: 131072K ...
- HDU1160 FatMouse's Speed —— DP
题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=1160 FatMouse's Speed Time Limit: 2000/1000 MS ...
- YTU 1098: The 3n + 1 problem
1098: The 3n + 1 problem 时间限制: 1 Sec 内存限制: 64 MB 提交: 368 解决: 148 题目描述 Consider the following algor ...
- BZOJ2002:Bounce 弹飞绵羊(LCT)
某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏.游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置设定初始弹力系数ki,当 ...