vue.js先容

1、vue.js是什么?

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

php项目引入vueVue与Webpack安装与应用 HTML

渐进式框架: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和class2、举例:<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