目录
01.Vue概述
vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。 简单,高效,生态丰富(插件多)
前端三大框架: React Vue Angular
vue作者尤雨溪:
尤雨溪毕业于上海复旦附中,在美国完成大学学业,本科毕业于Colgate University,后在Parsons设计学院获得Design & Technology艺术硕士学位,现任职阿里巴巴Weex团队。
2014年 Vue.js发布 2016年 Vue2.x发布 2022年 Vue3.x发布
02.Vue的安装与使用
1. 直接引用script
<script src="https://unpkg.com/vue@next"></script>
2. 安装脚手架
npm install -g @vue/cli
3.创建应用实列
createApp 函数创建一个新的应用实例
const app = Vue.createApp({
data() {
return { count: 4 }
}
})
const vm = app.mount('#app')
console.log(vm.count) // => 4
创建应用实例-完整代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>第一个vue案例</title>
<script src="../js/vue.js"></script>
</head>
<body>
<div id="app">
hello Vue!
</div>
<script>
const app = Vue.createApp({
data() {
return { count: 4 }
}
})
const vm = app.mount('#app')
console.log(vm.count) // => 4
</script>
</body>
</html>
03.Vue模板语法-文本渲染
模板语法介绍:
指令 是带有 v- 前缀的特殊 attribute。指令 的属性值预期是单个 JavaScript 表达式
文本渲染-{{}}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title></title>
<script src="./js/vue.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div id="app">{{msg}}</div>
<script type="text/javascript">
const app = Vue.createApp({
data() {
return {
msg: '你好Vue3'
}
}
})
const vm = app.mount('#app')
</script>
</body>
</html>
文本渲染 v-text指令
指令是带有 v- 前缀的特殊属性。
<div v-text="msg"> {{msg}}</div>
文本渲染html
为了输出真正的 HTML,你需要使用v-html
<div v-html="raw"></div>
<div v-text="raw"></div> <div >{{raw}}</div>
04.Vue模板语法-属性渲染
指令参数
指令是带有 v- 前缀的特殊 attribute。指令 属性值预期是单个 JavaScript 表达式 一些指令能够接收一个“参数",在指令名称之后以冒号表示。
例如,v-bind 指令可以用于响应式地更新 HTML 属性:
<div v-bind:title="title"> 学前端,薪资就是高</div>
属性渲染
我们可以使用v-bind指令给html标签动态的绑定属性。
<button v-bind:disabled="canUse">按钮</button>
属性渲染简写
v-bind可以简写为:
<button :disabled="canUse">按钮</button>
<div :title="title"> 学前端,薪资就是高</div>
05.总结:
Vue的安装与引用:
<script src="https://unpkg.com/vue@next"></script>
Vue实例:
const app = Vue.createApp({...})
const vm = app.mount('#app')
Vue指令:
v-开头的特殊属性
文本渲染指令:
{{}} v-text v-html
属性渲染:
v-bind