vue是什么?是一套用于构建用户界面的渐进式JavaScript框架。
渐进式:vue可以自底向上逐层的应用
vue的发展历程

vue的特点
采用组件化模式,提高代码复用率、且让代码更好维护
2、申明式编码,让编码人员无需直接操作DOM,提高开发效率

3、使用虚拟算法+diff算法,尽量复用DOM界点

原生的存在覆盖和未复用

虚拟DOM是首先加载到内存的,采用了diff算法,会将新的虚拟DOM和旧的虚拟DOM进行比较,新的DOM和原来的DOM有相同的部分时,相同的部分在真实的页面会直接复用,不同的会直接添加。
采用cdn引入在线资源
尝试 Vue.js 最简单的方法是使用HelloWord例子。你可以在浏览器新标签页中打开它,跟着例子学习一些基础用法。或者你也可以 创建一个html文件,然后通过如下方式引入 Vue:
在vscode下
- html>
- <html>
- <head>
- <meta charset="UTF-8"/>
- <title>初始vuetitle>
-
- <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js">script>
-
- head>
- <body>
- body>
-
- html>
建立一个空的目录,用idea打开,在setting中安装vue.js插件
创建html5文件
- html>
- <html>
- <head>
- <meta charset="utf-8">
- <title>Vue 测试title>
- <script src="https://cdn.staticfile.org/vue/2.7.0/vue.min.js">script>
- head>
- <body>
- <div id="kc">
- <h1>{{ message }}h1>
- div>
-
- <script>
- new Vue({
- el: '#kc',
- data: {
- message: 'Hello Vue.js!'
- }
- })
- script>
- body>
- html>
运行结果

当我们有两个相同的容器时
-
- <body>
- <div class="kc">
- <h1>hello1,{{message}}h1>
- div>
-
- <div class="kc">
-
- <h1>hello2,{{message}}h1>
- div>
-
-
- <script>
- vm= new Vue({
- el: '.kc',
- //model 模版
- data: {
- message: '张三'
- }
- })
- script>
- body>
点击页面

只有第一个生效了,一个vue实例 不能同时接管两个容器
多个实例对应一个容器
- <div id="kc">
- <h1>hello1,{{message}},{{sex}}h1>
- div>
-
-
-
-
- <script>
- // 创建vue实例
- vm= new Vue({
- el: '#kc',
- //model 模版
- data: {
- message: '张三'
- }
- })
-
-
- // 创建vue实例
- vm= new Vue({
- el: '#kc',
- //model 模版
- data: {
- sex: '男'
- }
- })
- script>

也会报错。
一个容器只能对应一个实例。两者一一对应
总结:
注意:js表达式和js代码(语句)
1、表达式:一个表达式会产生一个值,可以放在任何一个需要值的地方:
2、js代码(语句)