Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进DOM系统。 这里的核心思想就是没有繁琐的DOM操作,例如jQuery中,我们需要先找到div节点,获取到DOM对象,然后进行一系列的节点操作。
分析一下代码:
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document Title</title>
</head>
<body>
<!-- id标识vue作用的范围 -->
<div id="app">
<!-- {{}} 插值表达式,绑定vue中的data数据 -->
{{msg}}
</div>
<!-- 引入开发环境的vue.js版本,包含了有帮助的命令行警告 ,这样使用的也是最新版本-->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
// 创建一个vue对象
new Vue({
el: '#app',//绑定vue作用的范围,el是element的简写。
data: {//定义页面中显示的模型数据或者说为属性
msg:'Hello,Vue!'
}
})
</script>
</body>
</html>
我们已经成功创建了第一个 Vue 应用!看起来这跟渲染一个字符串模板非常类似,但是 Vue 在背后做了大量工作。现在数据和 DOM 已经被建立了关联,所有东西都是响应式的。我们要怎么确认呢?打开你的浏览器的 JavaScript 控制台 (就在这个页面打开),并修改 vm.msg 的值,你将看到上例相应地更新。
把上面的javascript内的代码,修改为如下:
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document Title</title>
</head>
<body>
<!-- id标识vue作用的范围 -->
<div id="app">
<!-- {{}} 插值表达式,绑定vue中的data数据 -->
{{msg}}
</div>
<!-- 引入开发环境的vue.js版本,包含了有帮助的命令行警告 ,这样使用的也是最新版本-->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
// 创建一个vue对象
let vm = new Vue({
el: '#app',//绑定vue作用的范围,el是element的简写。
data: {//定义页面中显示的模型数据或者说为属性
msg:'Hello,Vue!'
}
})
</script>
</body>
</html>
在控制台修改vm.msg属性的值。

显示如下效果:

注意我们不再和 HTML 直接交互了。一个 Vue 应用会将其挂载到一个 DOM 元素上 (对于这个例子是 #app) 然后对其进行完全控制。那个 HTML 是我们的入口,但其余都会发生在新创建的 Vue 实例内部。