Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架.
什么是渐进式?
- 渐进式意味着你可以将Vue作为你应用的一部分嵌入其中,带来更丰富的交互体验。
- 如果你希望将更多的业务逻辑使用Vue实现,那么Vue的核心库以及其生态系统
特点:
- 解耦视图和数据
- 可复用的组件
- 前端路由技术
- 状态管理
- 虚拟DOM
通过引入:
<!-- 开发环境版本,包含了有帮助的命令行警告 -->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<!-- 生产环境版本,优化了尺寸和速度 -->
<script src="https://cdn.jsdelivr.net/npm/vue"></script>
vue前端。
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>测试Hello Vue</title><script src="https://cdn.jsdelivr.net/npm/vue"></script>
</head>
<body>
<!--
创建Vue对象的时候,传入了一些options:{}{}中包含了el属性:该属性决定了这个Vue对象挂载到哪一个元素上,很明显,我们这里是挂载到了id为app的元素上{}中包含了data属性:该属性中通常会存储一些数据这些数据可以是我们直接定义出来的,比如像上面这样。也可能是来自网络,从服务器加载的
-->
<div id="app">{{ message }}
</div>
<script>var app = new Vue({el:'#app',data:{message:'Hellow Vue'}})
</script>
</body>
</html>
注意:定义模板的代码,要在 Vue 代码的前面。否则,数据就无法渲染进 DOM 系统。
attribute 被称为指令。指令带有前缀
v-`,以表示它们是 Vue 提供的特殊 attribute<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script src="https://cdn.jsdelivr.net/npm/vue"></script>
</head>
<body>
<div id="app">
<!-- 指令 -- v-bind --><span v-bind:title="message">鼠标悬停几秒钟查看此处动态绑定的提示信息!</span>
</div>
<script>var app2 = new Vue({el: '#app',data: {message: '页面加载于 ' + new Date().toLocaleString()}})
</script>
</body>
</html>
v-if
指令判断内容是否显示<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script src="https://cdn.jsdelivr.net/npm/vue"></script>
</head>
<body>
<!--v-if-->
<div id="app-3"><p v-if="seen">现在你看到我了</p>
</div>
<script>var app3 = new Vue({el: '#app-3',data: {//seen改为false的时候则看不到内容seen: true}})
</script>
</body>
</html>
v-for
指令可以绑定数组的数据来渲染一个项目列表如果添加一个内容化,则会直接加到已有内容的后面
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script src="https://cdn.jsdelivr.net/npm/vue"></script>
</head>
<body>
<!--v-for-->
<div id="app-4"><ol><li v-for="todo in todos">{{ todo.text }}</li></ol>
</div>
<script>var app4 = new Vue({el: '#app-4',data: {todos: [{ text: '学习 JavaScript' },{ text: '学习 Vue' },{ text: '整个牛项目' }]}})
</script>
</body>
</html>
js里的e,
v-on
指令添加一个事件监听器<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script src="https://cdn.jsdelivr.net/npm/vue"></script>
</head>
<body>
<!--v-on-->
<div id="app-5"><p>{{ message }}</p><button v-on:click="reverseMessage">反转消息</button>
</div>
<script>var app5 = new Vue({el: '#app-5',data: {message: '123456'},methods: {reverseMessage: function () {this.message = this.message.split('').reverse().join('')}}})
</script>
</body>
</html>
v-model
指令实现表单输入和应用状态之间的双向绑定。<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script src="https://cdn.jsdelivr.net/npm/vue"></script>
</head>
<body>
<!--v-model-->
<div id="app-6"><p>{{ message }}</p><input v-model="message">
</div>
<script>var app6 = new Vue({el: '#app-6',data: {message: ' '}})
</script>
</body>
</html>
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态