您所在的位置: > 主页 > 中华新金融网 > 商讯 > 正文
Vue与Webpack安装与使用来源: 日期:2020-03-28 06:06:00  阅读:

    Vue与Webpack安装与使用

    vue.js介绍

    1、vue.js是什么?

    ​Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与[现代化的工具链]{.underline}以及各种[支持类库]{.underline}结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。

    渐进式框架:Progressive,说明vue.js的轻量,是指一个前端项目可以使用vue.js一两个特性也可以整个项目都用vue.js。

    自底向上逐层应用:作为渐进式框架要实现的目标就是方便项目增量开发。参考:[https://cn.vuejs.org/v2/guide/]{.underline}

    我自己是一名从事了多年开发的web前端老程序员,目前辞职在做自己的web前端私人定制课程,今年年初我花了一个月整理了一份最适合2019年学习的web前端学习干货,各种框架都有整理,送给每一位前端小伙伴,想要获取的可以关注我的头条号并在后台私信我:前端,即可免费获取。

    2、Vue.js与ECMAScript

    Vue 不支持 IE8 及以下版本,因为 Vue 使用了 IE8 无法模拟的 ECMAScript 5 特性。什么是ECMAScript?

    ECMAScript(简称ES)是一种规范,我们平常所说的Js/Javascript是ECMAScript的实现,早期主要应用的ES3,当前主流浏览器都支持ES5、ES6,ES8已于2017年发布。

    ES6:[http://www.ecma-international.org/ecma-262/6.0/]{.underline}

    ES7:[http://www.ecma-international.org/ecma-262/7.0/]{.underline}

    3、Vue.js的使用

    在html页面使用script引入vue.js的库即可使用。

    使用Npm管理依赖,使用webpack打包工具对vue.js应用打包。大型应用推荐此方案。

    Vue-CLI脚手架

    使用vue.js官方提供的CLI脚本架很方便去创建vue.js工程雏形。

    4、vue.js有哪些功能?

    声明式渲染

    ​Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统。

    ​比如:使用vue.js的插值表达式放在Dom的任意地方, 差值表达式的值将被渲染在Dom中。

    条件与循环

    ​dom中可以使用vue.js提供的v-if、v-for等标签,方便对数据进行判断、循环。

    双向数据绑定

    ​Vue 提供v-model 指令,它可以轻松实现Dom元素和数据对象之间双向绑定,即修改Dom元素中的值自动修改绑定的数据对象,修改数据对象的值自动修改Dom元素中的值。

    处理用户输入

    ​为了让用户和你的应用进行交互,我们可以用方法

    组件化应用构建

    ​指令添加一个事件监听器,通过它调用在 Vue 实例中定义的

    ​vue.js可以定义一个一个的组件,在vue页面中引用组件,这个功能非常适合构建大型应用。

    vue.js基础

    MVVM模式

    vue.js是一个MVVM的框架,理解MVVM有利于学习vue.js。MVVM拆分解释为:

    Model:负责数据存储

    View:负责页面展示

    View Model:负责业务逻辑处理(比如Ajax请求等),对数据进行加工后交给视图展示

    MVVM要解决的问题是将业务逻辑代码与视图代码进行完全分离,使各自的职责更加清晰,后期代码维护更加简单

    用图解的形式分析Ajax请求回来数据后直接操作Dom来达到视图的更新的缺点,以及使用MVVM模式是如何来解决这个缺点的

    Vue中的 MVVM

    从上图看出,VM(ViewModel)可以把view视图和Model模型解耦合,VM的要做的工作就是vue.js所承担的。

    入门程序

    本次测试我们在门户目录中创建一个html页面进行测试,正式的页面管理前端程序会单独创建工程。在门户目录中创建vuetest目录,并且在目录下创建vue_01.html文件

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0uwJfZQv-1574066802967)(media/image5.jpeg)]

    代码编写步骤:

    1、定义html,引入vue.js

    2、定义app div,此区域作为vue的接管区域3、定义vue实例,接管app区域。

    4、定义model(数据对象)

    5、VM完成在app中展示数据

    1. 1+1=2

    实现效果:

    代码如下:

    <!DOCTYPE html>
    <html lang="en" xmlns:v‐on="http://www.w3.org/1999/xhtml">
    <head>
    <meta charset="UTF‐8">
    <title>vue.js入门程序</title>

    </head>
    <body>
    <div id="app">
    <!‐‐{{name}}解决闪烁问题使用v‐text‐‐>
    <a v‐bind:href="url"><span v‐text="name"></span></a>
    <input type="text" v‐model="num1">+
    <input type="text" v‐model="num2">=
    <span v‐text="result"></span>
    <!‐‐ <span v‐text="Number.parseInt(num1)+Number.parseInt(num2)"></span>‐‐>
    <!‐‐{{num1+num2}}‐‐>
    <!‐‐<input type="text" v‐model="result">‐‐>
    <button v‐on:click="change">计算</button>
    <!‐‐ 在Vue接管区域中使用Vue的系统指令呈现数据这些指令就相当于是MVVM中的View这个角色 ‐‐>
    </div>
    </body>
    <script src="/js/vue/vue.min.js"></script>
    <script>
    // 实例化Vue对象

    //vm :叫做MVVM中的 View Model
    var VM = new Vue({
    el:"#app",//表示当前vue对象接管app的div区域data:{
    name:'黑马程序员',// 相当于是MVVM中的Model这个角色
    num1:0, num2:0, result:0,
    url:'http://www.itcast.cn'
    },
    methods:{
    change:function(){
    this.result = Number.parseInt(this.num1)+Number.parseInt(this.num2) alert(this.result)
    }
    }

    });

    </script>
    </html>

    本例子学习了:

    一、v-model:

    1.在表单控件或者组件上创建双向绑定,2.v-model仅能在如下元素中使用:

    2.解决插值表达式闪烁问题,使用v-text

    v-text可以将一个变量的值渲染到指定的元素中,它可以解决插值表达式闪烁的问题

    2.v-on绑定一个按钮的单击事件

    3.v-bind

    1、作用:
    v‐bind可以将数据对象绑定在dom的任意属性中。
    v‐bind可以给dom对象绑定一个或多个特性,例如动态绑定style和class

    2、举例:
    <img v‐bind:src="imageSrc">
    <div v‐bind:style="{ fontSize: size + 'px' }"></div>

    3、缩写形式
    <img :src="imageSrc">
    <div :style="{ fontSize: size + 'px' }"></div>

    2. v-if和v-for

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF‐8">
    <title>Document</title>
    <script src="/js/vue/vue.min.js"></script>
    </head>
    <body>
    <div id="app">
    <ul>
    <!‐‐只显示偶数行‐‐>
    <li v‐for="(item,index) in list" :key="index" v‐if="index % 2==0">{{index}}‐{{item}}
    </li>
    <li v‐for ="(value,key) in user">{{key}}‐{{value}}</li>
    <li v‐for="(item,index) in userlist" :key="item.user.uname">
    <div v‐if="item.user.uname=='heima'" style="background: chartreuse"><!‐‐名称为heima的加背景色‐‐>
    {{index}}‐{{item.user.uname}}‐{{item.user.age}}
    </div>
    <div v‐else="">
    {{index}}‐{{item.user.uname}}‐{{item.user.age}}
    </div>
    </li>
    </ul>
    </div>
    </body>

    <script>
    new Vue({
    el:'#app', data:{
    list:[1,2,3,4,4],
    user:{uname:'itcast',age:10}, userlist:[
    { user:{uname:'itcast',age:10}},
    { user:{uname:'heima',age:11}}
    ]
    }
    });
    </script>
    </html>

    webpack介绍

    ​Webpack 是一个前端资源的打包工具,它可以将js、image、css等资源当成一个模块进行打包。

    从图中我们可以看出,Webpack 可以将js、css、png等多种静态资源 进行打包,使用webpack有什么好处呢?

    模块化开发

    ​程序员在开发时可以分模块创建不同的js、 css等小文件方便开发,最后使用webpack将这些小文件打包成一个文件,减少了http的请求次数。

    webpack可以实现按需打包,为了避免出现打包文件过大可以打包成多个文件。

    编译typescript、ES6等高级js语法

    随着前端技术的强大,开发中可以使用javascript的很多高级版本,比如:typescript、ES6等,方便开发,

    webpack可以将打包文件转换成浏览器可识别的js语法。

    CSS预编译

    webpack允许在开发中使用Sass 和 Less等原生CSS的扩展技术,通过sass-loader、less-loader将Sass 和 Less的语法编译成浏览器可识别的css语法。

    webpack的缺点:

    配置有些繁琐

    文档不丰富

    安装webpack

    安装Node.js

    webpack基于node.js运行,首先需要安装node.js。

    为什么会有node.js?

    ​传统意义上的 JavaScript 运行在浏览器上,Chrome 使用的 JavaScript 引擎是 V8,Node.js 是一个运行在服务端的框架,它的底层就使用了 V8 引擎,这样就可以使用javascript去编写一些服务端的程序,这样也就实现了用javaScript去开发 Apache + PHP 以及 Java Servlet所开发的服务端功能,这样做的好处就是前端和后端都采用 javascript,即开发一份js程序即可以运行在前端也可以运行的服务端,这样比一个应用使用多种语言在开发效率上要高,不过node.js属于新兴产品,一些公司也在尝试使用node.js完成一些业务领域,node.js基于V8引擎,基于 事件驱动机制,在特定领域性能出色,比如用node.js实现消息推送、状态监控等的业务功能非常合适。

    下边我们去安装Node.js:

    推荐下载LTS版本,本教程安装9.4.0。

    选安装目录进行安装默认即可

    安装完成检查PATH环境变量是否设置了node.js的路径。

    测试

    在命令提示符下输入命令

    会显示当前node的版本

    安装NPM

    1.自动安装NPM

    ​npm全称Node Package Manager,他是node包管理和分发的工具,使用NPM可以对应用的依赖进行管理,NPM的功能和服务端项目构建工具maven差不多,我们通过npm 可以很方便地下载js库,打包js文件。node.js已经集成了npm工具,在命令提示符输入 npm -v 可查看当前npm版本

    2.设置npm,淘宝镜像

    npm默认会去国外的镜像去下载js包,在开发中通常我们使用国内镜像,这里我们使用淘宝镜像

    npm config set registry https://registry.npm.taobao.org

    1.配置后可通过下面方式来验证是否成功

    2.npm config get registry

    npm info express

    安装webpack

    ​全局安装webpack: npm install webpack -g

    ​项目独立安装: npm install --save-dev webpack

    ​如果安装成功,出现如下界面

    启动

    启动文件:

    进入 webpacktest02目录,执行npm run dev

    使用webstorm,右键package.json文件,选择"Show npm Scripts"

    双击 dev。

    注意:dev就是在package.json中配置的webpack dev server命令。发现启动成功自动打开浏览器。

    修改src中的任意文件内容,自动加载并刷新浏览器。

    原文链接:https://blog.csdn.net/ZhouXianBiao/article/details/103126237

    (正文已结束)

    免责声明及提醒:此文内容为本网所转载企业宣传资讯,该相关信息仅为宣传及传递更多信息之目的,不代表本网站观点,文章真实性请浏览者慎重核实!任何投资加盟均有风险,提醒广大民众投资需谨慎!