《Vue.js前端框架技术》知识点总结

1、Vue.js入门

1.1Vue.js是什么?

Vue.js(通常简称为Vue)是一款用于构建用户界面的JavaScript框架。其主要特点有:

  • 基于标准HTML、CSS和JavaScript构建。
  • 提供了一种声明式的、组件化的编程模型,使开发者能高效地开发用户界面。
  • 独立于任何特定的浏览器或操作系统。
  • 可以轻松处理大多数Web应用的场景,且几乎不需要手动优化。
  • 目前已被广泛用于生产环境,尤其在复杂单页应用方面表现出色。

2、基础特征

2.1Vue构造选项

选项说明
el唯一根标签,决定Vue实例会管理哪一个DOM节点
dataVue实例对应的数据对象
methods定义Vue实例对应的方法,可以在其他地方调用,也可以在指令中使用
computed定义Vue实例计算属性,可以在其他地方调用,也可以在指令中使用,本质是一个属性而不是一个函数,在调用时不用加小括号
components定义Vue实例的子组件
filters定义Vue实例的过滤器
watch监听数据的变化,观察和响应Vue实例上的数据变动

2.2模板语法

2.2.1常用指令

  1. v-text
<div id="app" v-text="msg"></div>
<script>
var app=new Vue({
el:"#app",
data:{
msg:"Hello,v-text!"
}
})
</acript>

 2.v-html

<div id="app" v-html="msg"></div>
<script>
var app =new Vue({
el:"#app",
data:{
msg:"<h1>Hello,v-html!</h1>"
}
})
</script>

3.v-cloak

<style>
[v-cloak]{
display:none;
}

</style>
<div id="app" v-cloak>{{ msg }}</div>

<script>
var app=new Vue({
el:"#app",
data:{
msg:"Hello,v-cloak!"
}
})
</script>

4.v-bind

<div id="app">
<input v-bind:value="msg">
</div>

<script>
var app = new Vue({
el:"#app",
data:{
msg:"Hello,v-bind!"
}
})
</script>

5.v-on

<div id="app">
<p>{{msg}}</p>
<button v-on : click="sayHello">请单击</button>
</div>
<script>
var app= new Vue({
el:"#app",
data:{
msg:"Hi"
},

methods:{
sayHello:function(){
this.msg="Hello,v-on!"
}
}

})
</script>

2.2.2事件修饰符

事件修饰符说明
.stop

阻止事件冒泡

.prevent

阻止默认事件

.capture添加事件监听器时使用事件捕捉获模式
.self将事件绑定到该元素本身,只有自身才能触发
.once事件只触发一次

2.2.3v-model双向数据绑定

实例:

<! DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<!--引入Vue.js核心文件-->
<script src="vue.js"></script>
</head>
<body>
<div id="app">
<input type="text" v-model="msg">
<p>文本框的内容</p>
</div>

<script>
var app = new Vue({
el:"#app"
data:{
mag:""
}

})

</script>
</body>
</html>

2.3计算属性与监听属性

2.3.1 computed计算属性

<div id="app">
{{msg.split(").reverse().join}}
</div>

2.3.2计算属性的缓存

computed:{
//关闭缓存,默认为trud
cache:false,
//计算属性的getter函数
reverseMsg:function(){
return this.msg.split(").reverse().join(");

}
}

2.4class与style的增强绑定

2.4.1v-bind绑定class属性

<!DOCTYPE html>
<html>
<head lang ="en">
<meta charset="UTF-8">
<title></title>

<!--引入Vue.js核心文件-->
<script scr="vue.js"></script>
<style>
.outer{
background-color:red;
width:100%;
height:200px;
}
.inner{
background-color:blue;
width:150px;
height:150px;
broder:4px solid black;
float:left;
}

.font{
color:whith;
font-weight:bolder;
}
</style>
</head>
<body>
<div id="div">
<div v-bind:class="{outer}">
outer div
<div v-bind:class="{inner}">inner div </div>
<div v-bind:class="{inner}">inenr div </div>
</div>
</div>
<scrip>
var app=new Vue({
el:"#app";
data:{
outer:"outer",
inner:"inner"
}
});
</script>
</body>
</html>

3、内置指令

3.1列表渲染指令v-for

3.1.1基本用法

v-for是Vue.js的循环语句,它的表达式需要结合着in或者of来使用,类似item in items的形式。下面通过实例循环普通语句:

实例:

<div id="app">
<ul>
<li v-for="(item,index)of fruit":key="index"
</li>
</ul>
</div>

<script>
new Vue({
el:"#app"
data:{
fruit:["苹果","梨子","香蕉","橘子"]
}
})
</script>

3.2条件渲染指令

3.2.1v-if

v-if的使用一般有两个场景。

(1)通过条件判断展示或者隐藏某个元素或者多个元素。

(2)进行视图之间交换。

实例:

<div di="app">
<ul>
<li v-for="count of 10">
这是第{{count}}次
</li>
</ul>
</div>
<script>
new Vue({
el:"app",
})
</script>

3.2.2v-show

v-show是另一个条件渲染语句,用于根据条件展示元素,用法与v-if大致一样,v-show的基本使用如:

实例:

<div id="app">
<h1v-show="ok">Hello!</h1>
</div>
<script>
new Vue({
el:"app",
data:{
ol:teue
}
})
</script>

3.3 fiters过滤器

Vue.js允许自定义过滤器,过滤器的作用可被用于一些常见的文本格式化。

过滤器可以用在两个地方:

1、双花括号插值

2、v-bind表达式

实例:

<div di="app">
<p>电脑价格:{{price |addPriceIcon}}</p>
</div>
<script>
new Vue({
el:"#app",
data:{
parice:200
},
filters:{
//处理函数
addPrixceIcon (value){
console.log(value){
console.log(value)//200
return''+value
}

}

})
</script>

3.4修饰符

3.4.1按键修饰符

v-on指令用来进行事件监听(如单击事件、键盘事件):

<div id="app">
<input v-on:keyup="counter"/>
<p>在输入框中输入了{{counter}}个字符</p>
</div>
<script>
new Vue({
el:'#app',
data:{
counter:0
}
})
</script>

3.4.2 v-model修饰符

v-model可以实现表单元素和数据的双向绑定。

v-model三个修饰符:

lazy默认在input事件中同步输入框中内容,即一旦有数据发生变化,对应的data中数据就会自动发生变化。
number默认情况下,在输入框中输入的内容会被当作字符串类型进行处理。
trimtrim修饰符可以去除输入内容左右两边空格。

3.5自定义指令

除了核心功能默认内置的指令,Vue.js允许注册自定义指令。添加一个自定义指令,有两种方式。

(1)通过Vue.direction()函数注册一个全局的指令。

  • 9
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值