Vue简介及HelloWord编写

简介

Vue是一套用于构建用户界面的渐进式JavaScript框架,何为渐进式,主要是自底向上逐层应用,并且简单应用可以使用核心库便可完成,如果需要复杂地应用,需要引入一些Vue插件库,这就达到渐进式。

官网:

  1. 英文官网: https://vuejs.org/
  2. 中文官网: https://cn.vuejs.org/

特点:

  • 采用组件化模式,用以提高开发效率,代码复用率,并且能让代码更好地维护。
  • 声明式编码,让开发人员无需直接操纵DOM,只需按一定的规则(标签等语法)声明告诉Vue如何操纵,剩下的就由Vue的底层代码进行处理,提高开发效率。
  • 使用虚拟Dom+优秀Diff算法,尽量复用Dom。
  • Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。
Vue开发环境

由于初学者就不适用工程化创建,只需引用一个vue的核心库,就能达到使用Vue的程度。
Vue核心库:
https://cn.vuejs.org/v2/guide/installation.html
有两个版本,开发版和生产版:
在这里插入图片描述
在开发环境下不要使用生产版本,不然就失去了所有常见错误相关的警告!

把相关库下载到本地,或者引用互联网的链接也行。
在这里插入图片描述
vue.min.js是生产版本,vue.js是开发版本。
默认已经知道Visual Code的基本使用。
把这两个文件拷贝到工程文件夹中。
在这里插入图片描述
创建一个html文件,引用vue.js文件。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue 的 HelloWord</title>
    <!-- 引入vue依赖 -->
    <script src="../js/vue.js"></script>
</head>
<body>
    <!--
        Vue新手五步式:
        1. 引入vue.js库。
        2. 编写一个给vue管理的容器,并设立一个Id。
        3. 创建一个Vue对象,并在构造函数的参数上传入一个配置对象。
        4. 容器里面的代码依然符合Html规范,比如h1标签会变大变粗,只不过混入了一些特殊的Vue语法。
        5. 容器里面的代码被称为模板代码,只要我们按照Vue的规则语法完成模板,vue就会解析模板,生成我们想要的页面。
    -->

    <!-- 创建一个容器 -->
    <div id="root">
        <!-- vue是一个插值表达式,语法为 {{表达式}}  具体后面再讲 ,现在就会把Vue实例中data对象的accountName属性的值插入到对应的地方-->
        你好,{{accountName}}
    </div>
    
    <script>
    //关闭开发环境提示
        Vue.config.productionTip = false;
         //创建一个vue对象
        new Vue({
            el:"#root",  //el是元素element的缩写,用于指定这个Vue对象管理的容器,vue会管理找到的容器及其所有子元素,指定一般可以使用css的选择器语法,也可以使用js原生代码。
            //el: document.getElementById("root"),     管理容器使用js原生代码
            data: { // data返回一个对象,代表Vue管理的数据,我们暂时先写成一个对象,但这不是最终写法。
                accountName:"Yehaocong"
            }
        })
    </script>
    
</body>
</html>

效果:
在这里插入图片描述
控制台会有点提示:
在这里插入图片描述
要想消除第一个提示,就要安装谷歌浏览器的Vue开发者工具,需要翻墙,我这里就准备了一个百度云地址。
https://pan.baidu.com/s/1jDrakkYZAy_FUm-6ThhyPQ 提取码 6666

开发者工具下载下来后,在谷歌上面配置,

  • 打开插件管理:
    在这里插入图片描述
    在这里插入图片描述
    缩小窗口,但是不要最小化,然后拖动开发者工具文件进去即可。
    在这里插入图片描述
    在这里插入图片描述
    然后提示就没了:
    在这里插入图片描述

第二个提示是修改Vue的配置。
在这里插入图片描述
在这里插入图片描述

一个注意点:
Vue实例跟容器是一 一对应的,也就是一个Vue实例只管理一个容器,一个容器只能被一个Vue实例管理。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue 的 HelloWord</title>
    <!-- 引入vue依赖 -->
    <script src="../js/vue.js"></script>
</head>
<body>
    
    <!-- 创建一个容器 -->
    <div class="root">
        <!-- vue是一个插值表达式,语法为 {{表达式}}  具体后面再讲 ,现在就会把Vue实例中data对象的accountName属性的值插入到对应的地方-->
        你好,{{accountName}}
    </div>
    <div class="root">
        <!-- vue是一个插值表达式,语法为 {{表达式}}  具体后面再讲 ,现在就会把Vue实例中data对象的accountName属性的值插入到对应的地方-->
        你好,{{accountName}}
    </div>

    <div id="root">
        <!-- vue是一个插值表达式,语法为 {{表达式}}  具体后面再讲 ,现在就会把Vue实例中data对象的accountName属性的值插入到对应的地方-->
        你好,{{accountName}}
        我是,{{myName}}
    </div>


    
    
    <script>
        //关闭开发环境提示
        Vue.config.productionTip = false;
         //创建一个vue对象,//这里是1个Vue实例对应2个容器,class是root,测试vue实例与容器能否1对多
        new Vue({
            el:".root",  //el是元素element的缩写,用于指定这个Vue对象管理的容器,vue会管理找到的容器及其所有子元素,指定一般可以使用css的选择器语法,也可以使用js原生代码。
            //el: document.getElementById("root"),  S   管理容器使用js原生代码
            data: { // data返回一个对象,代表Vue管理的数据,我们暂时先写成一个对象,但这不是最终写法。
                accountName:"Yehaocong"
            }
        })

        //这里是两个Vue实例对应一个容器,id是root,测试vue实例与容器能否多对一
        new Vue({
            el:"#root",  //el是元素element的缩写,用于指定这个Vue对象管理的容器,vue会管理找到的容器及其所有子元素,指定一般可以使用css的选择器语法,也可以使用js原生代码。
            //el: document.getElementById("root"),  S   管理容器使用js原生代码
            data: { // data返回一个对象,代表Vue管理的数据,我们暂时先写成一个对象,但这不是最终写法。
                accountName:"Yehaocong"
            }
        })

        new Vue({
            el:"#root",  //el是元素element的缩写,用于指定这个Vue对象管理的容器,vue会管理找到的容器及其所有子元素,指定一般可以使用css的选择器语法,也可以使用js原生代码。
            //el: document.getElementById("root"),  S   管理容器使用js原生代码
            data: { // data返回一个对象,代表Vue管理的数据,我们暂时先写成一个对象,但这不是最终写法。
                myName:"LiaoXiaoyan"
            }
        })
    </script>
    
</body>
</html>

效果:可以看到第二个是没有渲染成功的,原因是Vue找到第一个符合的容器后就不再继续往下找了,并且控制台还报错了,因为一个容器只会被一个vue实例管理,所以虽然第二个vue实例定义了myName数据,但是没有管理到容器,所以报错
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值