Vue框架

Vue的简介

Vue是一套构建用户界面的框架,与Angular、React两个框架相比,Vue吸取了这两个框架的优点,单页面管理,中文设计,数据驱动(DOM驱动)

Vue的使用

  • 通过script标签引入vue.js
  • 创建vue对象
  • 通过el进行挂载
  • 通过data定义对象的属性
  • 通过method定义对象的方法
<body>
<div id="d1">
{{ msg }}
</div>
<!--通过script标签引入vue-->
<script src="vue/vue.js"></script>
<script>
// 创建vue对象
let vue1 = new Vue({
el: '#d1', // 挂载点:使vue对象和html标签建立联系
data: {
msg: 'message'
},
methods: {
Click : functione () {
alert(123)
}
})
</script>
</body>

插值表达式

`
差值表达式就是在挂载点对应的标签当中,
用{{ }}调用在vue对象中已经定义好的变量也可以对变量进行简单处理
` <div id="d1">
{{ msg }}
{{ num * 10}}
{{ msg + 1}}
{{ msg[1] }}
{{ msg.split('') }}
</div> <script src="vue/vue.js"></script>
<script>
new Vue({
el: '#d1',
data: {
msg: 'test',
num: 10
}
})
</script>

文本指令

  • {{}}
  • v-text: 原样输出
  • v-html:可以解析html代码
  • v-once:当前的标签只能被渲染一次,即使标签内引用的变量发生了变化
<body>
<div id="d1">
<p>{{ msg }}</p>
<p v-text="msg.split('')">12345</p>
<p v-text="info"></p>
<p v-html="info"></p> <hr>
<!--v-once保证当前标签只渲染一次, 既第一次加载页面的时候, 因此即使msg的值发生了变化, 变迁的内容也不变-->
<p v-on:click="pClick" v-once>{{ msg }}</p>
<p>{{ msg }}</p>
</div> <script src="vue/vue.js"></script>
<script>
new Vue({
el: '#d1',
data: {
msg: 'message',
info: '<h1>info</h1>'
},
methods: {
pClick: function () {
if (this.msg !== '信息') {
this.msg = '信息'
}else {
this.msg = 'message'
}
}
})
</script>

事件指令

  • 就是给挂载点内标签绑定事件
  • v-on:事件名="方法名"也可以简写为@事件名="方法名"
  • @事件名="方法名" 方法名不加括号会自动传入一个$event事件对象
  • @事件名="方法名() 方法名加括号时, 不会自动传参
<body>
<div id="d1">
<p @click="f1">{{ click }}</p>
<p @mouseover="f2" @mouseout="f3" @mousedown="f4" @mouseup="f5" @mousemove="f6" @contextmenu="f7">{{ action }}</p>
<hr>
<!--不加括号时, 会自动传入一个参数: 点击事件对象$event-->
<p @click="f8">{{ click }}</p>
<!--加括号时, 不会自动传参, 可以手动传参-->
<p @click="f8($event, '并且传入参数')">{{ click }}</p>
<p></p> </div> <script src="vue/vue.js"></script>
<script>
new Vue({
el: '#d1',
data: {
click: '点击事件',
action: '鼠标事件'
},
methods: {
f1() {
this.click = '点击了'
},
f2() {
this.action = '悬浮'
},
f3() {
this.action = '离开'
},
f4() {
this.action = '按下'
},
f5() {
this.action = '抬起'
},
f6() {
this.action = '移动'
},
f7() {
this.action = '右键'
},
f8(ev, arg) {
console.log(ev);
this.click = '点击了' + arg
}, }
})
</script>

属性指令

  • 属性指令就是用来控制挂载点内的标签的属性的
  • v-bind:属性名="变量"也可以简写为 :属性名="变量"
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.d1 {
width: 200px;
height: 200px;
background-color: red;
} .d2 {
border-radius: 50%;
}
</style>
</head>
<body>
<div id="d1">
<!--class属性绑定-->
<p :class="c1">class属性</p>
<!--使用[]绑定多个类-->
<p :class="[c1, c2]">class属性</p>
<!--既支持变量, 也支持常量-->
<p :class="['d1', c2]">class属性</p>
<!--{类名:布尔值}可以控制该类是否其作用-->
<p :class="[c1, {d2: false}]">布尔控制</p> <p :style="myStyle">style属性</p>
<p :style="{width: w, height: h, backgroundColor: bgc}">style属性</p>
<p></p> </div> <script src="vue/vue.js"></script>
<script>
new Vue({
el: '#d1',
data: {
c1: 'd1',
c2: 'd2',
is_true: true,
myStyle: {
width: '100px',
height: '100px',
backgroundColor: 'green'
},
w: '100px',
h: '100px',
bgc: 'green'
},
})
</script> </body>
</html>

--++

day 67的更多相关文章

  1. P87LPC760/61/62/64/67/68/69/78/79芯片解密单片机破解价格

    NXP恩智浦P87LPC760/61/62/64/67/68/69/78/79芯片解密单片机破解 NXP LPC700系列单片机解密型号: P87LPC759.P87LPC760.P87LPC761. ...

  2. 【UOJ#67】新年的毒瘤 Tarjan 割点

    #67. 新年的毒瘤 UOJ直接黏贴会炸...    还是戳这里吧: http://uoj.ac/problem/67#tab-statement Solution 看到这题的标签就进来看了一眼. 想 ...

  3. UOJ#67. 新年的毒瘤

    传送门 练习一下Tarjan的模板. 求一下割点,然后加个约束条件判一下特殊点,剩下的就是所求点. //UOJ 67 //by Cydiater //2016.10.27 #include <i ...

  4. Scala 深入浅出实战经典 第67讲:Scala并发编程匿名Actor、消息传递、偏函数解析

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...

  5. 重新想象 Windows 8 Store Apps (67) - 后台任务: 推送通知

    [源码下载] 重新想象 Windows 8 Store Apps (67) - 后台任务: 推送通知 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 后台任务 推送通 ...

  6. Effective Java 67 Avoid excessive synchronization

    Principle To avoid liveness and safety failures, never cede control to the client within a synchroni ...

  7. leetcode 67

    67. Add Binary Given two binary strings, return their sum (also a binary string). For example,a = &q ...

  8. Part 67 to 70 Talking about method parameters in C#

    Part 67 Optional parameters in c# Part 68  Making method parameters optional using method overloadin ...

  9. uoj 67 新年的毒瘤 割点

    题目链接: 题目 #67. 新年的毒瘤 问题描述 辞旧迎新之际,喜羊羊正在打理羊村的绿化带,然后他发现了一棵长着毒瘤的树. 这个长着毒瘤的树可以用 nn 个结点 mm 条无向边的无向图表示.这个图中有 ...

  10. http://www.mxchip.com/talk/news/jishuwenzhang/2014-09-11/67.html

    http://www.mxchip.com/talk/news/jishuwenzhang/2014-09-11/67.html

随机推荐

  1. 03-cmake语法-变量,字符串

    CMake的基本数据类型是字符串(不区分大小写),一组字符串在一起称为列表(list). 条件判断中的取值情况如下表: 真 1, ON, YES, TRUE, Y, 非0的数  假 0, OFF, N ...

  2. 通过DatagramSocket实现UDP编程(十三)

    原文链接:https://www.cnblogs.com/hysum/p/7533149.html UDP通信: UDP协议(用户数据报协议)是无连接.不可靠.无序的. UDP协议以数据报作为数据传输 ...

  3. 阿里云serverless使用笔记

    1.使用api网关服务,创建完api后,测试时,需要传“请求签名”,否则会报401 ‘Empty Signature’错误.相关文档<错误编码表,请求签名>.(错误信息放置与响应头的‘x- ...

  4. Python进阶-VI 生成器函数进阶、生成器表达式、推导式

    一.生成器函数进阶 需求:求取移动平均数 1.应用场景之一,在奥运会气枪射击比赛中,每打完一发都会显示平均环数! def show_avg(): print('你已进入显示移动平均环数系统!') a ...

  5. 使用hangfire在xunit中

    框架为:abp hangfire配置连接:https://aspnetboilerplate.com/Pages/Documents/Hangfire-Integration 在单元测试中如何配置呢? ...

  6. Taro/微信小程序解析XML

    npm i xmldom PS: https://www.npmjs.com/package/xmldom https://blog.csdn.net/caojie1008/article/detai ...

  7. linux c 学习 GUN glibc 信息查看

    gun glibc 信息查看方法 方式 共享库作为可执行文件,默认位置可能为/lib/libc.so.6信息如下:   GNU C Library (GNU libc) stable release ...

  8. 为什么accpet会重新返回一个套接字

    在服务器端,socket()返回的套接字用于监听(listen)和接受(accept)客户端的连接请求.这个套接字不能用于与客户端之间发送和接收数据. accept()接受一个客户端的连接请求,并返回 ...

  9. 洛谷P4593 [TJOI2018]教科书般的亵渎

    小豆喜欢玩游戏,现在他在玩一个游戏遇到这样的场面,每个怪的血量为\(a_i\)​,且每个怪物血量均不相同,小豆手里有无限张"亵渎".亵渎的效果是对所有的怪造成\(1\)点伤害,如果 ...

  10. CF908G New Year and Original Order(DP,数位 DP)

    又一次降智…… (数位 DP 原来可以写这么短,学到了) 问题可以转化为求数位中 $\ge k$ 的有恰好 $j$ 位的数的个数.设为 $c_{j,k}$. 那么答案就是:(考虑把 $k$ 的贡献拆开 ...