前端开发之走进Vue.js(入门者看过来)
Vue.js
作为目前最热门最具前景的前端框架之一,其提供了一种帮助我们快速构建并开发前端项目的新的思维模式。本文旨在帮助大家认识Vue.js
,了解Vue.js的开发流程,并进一步理解如何通过Vue.js
来构建一个中大型的前端项目,同时做好相应的部署与优化工作。
文章将以PPT
图片附加文字介绍的形式展开,不会涉及知识点的具体代码,点到为止。有兴趣的同学可以查看相应的文档进行了解。
vue.js
简介
从上图的介绍中我们不难发现Vue.js
是一款轻量级的以数据驱动的前端JS框架,其和jQuery
最大的不同点在于jQuery
通过操作DOM
来改变页面的显示,而Vue通过操作数据来实现页面的更新与展示。下面便是Vue
数据驱动的概念模型:
Vue.js
主要负责的是上图绿色正方体ViewModel
的部分,其在View
层(即DOM
层)与Model层(即JS逻辑层)之间通过ViewModel
绑定了DOM
Listeners与Data Bingings两个相当于监听器的东西。
当View层的视图发生改变时,Vue会通过DOM Listeners
来监听并改变Model
层的数据。相反,当Model
层的数据发生改变时,其也会通过Data Bingings
来监听并改变View
层的展示。这样便实现了一个双向数据绑定的功能,也是Vue.js
数据驱动的原理所在。
VUE实例
在一个html
文件中,我们直接可以通过script
标签引入Vue.js
,然后就可以在页面里写Vue.js
代码了。上图中我们通过new Vue()构建了一个Vue的实例,在实例中,可以包含挂在元素(el
),数据(data
),模板(template
),方法(methods
)与生命周期钩子(created
等)等选项。不同的实例选项拥有不同的功能,如:
(1)el
表明我们的Vue
需要操作哪一个元素下的区域,’#demo
’表示操作id
为demo
的元素下区域。
(2)data
表示Vue
实例的数据对象,data
的属性能够响应数据的变化。
(3)created
表示实例生命周期中创建完成的那一步,当实例已经创建完成之后将调用其方法。
Vue常用指令
在Vue项目的开发中,我们使用的最多的应该就属Vue的指令了。通过Vue提供的常用指令,我们可以淋漓尽致地发挥Vue数据驱动的强大功能。以下便是图中常用指令的简单介绍:
(1)v-text: 用于更新绑定元素中的内容,类似于jQuery的text()方法
(2)v-html: 用于更新绑定元素中的html内容,类似于jQuery的html()方法
(3)v-if: 用于根据表达式的值的真假条件渲染元素,如果上图P3为false则不会渲染P标签
(4)v-show: 用于根据表达式的值的真假条件显示隐藏元素,切换元素的 display CSS 属性
(5)v-for: 用于遍历数据渲染元素或模板,如图中P6为[1,2,3]则会渲染3个P标签,内容依次为1,2,3
(6)v-on: 用于在元素上绑定事件,图中在P标签上绑定了showP3的点击事件
VUE.js技术栈
以上我们讲到可以直接在一个html页面里通过引入Vue.js来直接写Vue代码,但是这样的方式并不常用。因为如果我们的项目比较大,项目中会存在很多页面,一旦每个页面都引入一个Vue.js或者声明一个Vue实例,这样非常不利于后期的维护和代码的公用,也会存在实例名冲突的情况,所以我们需要用到Vue提供的技术栈来构建强大的前端项目。
除了Vue.js我们还需要用到:
(1)vue-cli:Vue的脚手架工具,用于自动生成Vue项目的目录及文件。
(2)vue-router: Vue提供的前端路由工具,利用其我们实现页面的路由控制,局部刷新及按需加载,构建单页应用,实现前后端分离。
(3)vuex:Vue提供的状态管理工具,用于同一管理我们项目中各种数据的交互和重用,存储我们需要用到数据对象。
(4)ES6:Javascript的新版本,ECMAScript6的简称。利用ES6我们可以简化我们的JS代码,同时利用其提供的强大功能来快速实现JS逻辑。
(5)NPM:node.js的包管理工具,用于同一管理我们前端项目中需要用到的包、插件、工具、命令等,便于开发和维护。
(6)webpack:一款强大的文件打包工具,可以将我们的前端项目文件同一打包压缩至js中,并且可以通过vue-loader等加载器实现语法转化与加载。
(7)Babel:一款将ES6代码转化为浏览器兼容的ES5代码的插件
利用以上等技术,我们便可以开始构建我们的Vue项目了。
构建大型应用
在构建我们的中大型Vue项目中,我们主要介绍如何利用vue-cli来自动生成我们项目的前端目录及文件,了解Vue中一切皆组件的概念及父子组件的通信问题,讲解在Vue项目中我们如何使用第三方插件,最后利用webpack来打包及部署我们的项目。
vue-cli构建
在使用vue-cli之前我们需要安装node.js,利用其提供的npm命令来安装vue-cli。安装node.js只需去其官网下载软件并安装即可,地址为:https://nodejs.org/en/
安装完成之后我们打开电脑的cmd命令行工具依次输入上图中的命令:
(1)npm install -g vue-cli:全局安装vue-cli
(2)vue init webpack my-project: 利用vue-cli在目录地址生成一个基于webpack的名为’my-project‘的Vue项目文件及目录
(3)cd my-project:打开刚刚创建的文件夹
(4)npm intall:安装项目所依赖的包文件
(5)npm run dev:利用本地node服务器在浏览器中打开并浏览项目页面
这样我们的一个基于webpack的vue项目目录就构建好了。
单文件组件
前端开发之走进Vue.js(入门者看过来)相关推荐
- 前端开发之走进Vue.js
Vue.js作为目前最热门最具前景的前端框架之一,其提供了一种帮助我们快速构建并开发前端项目的新的思维模式.本文旨在帮助大家认识Vue.js,了解Vue.js的开发流程,并进一步理解如何通过Vue.j ...
- Vue.js高效前端开发 • 【初识Vue.js】
全部章节 >>>> 文章目录 一.Vue概述 1.Web前端框架介绍 2.MVC和MVVM 3.Vue介绍 4.安装Vue 二.Vue使用 1.第一个Vue应用 2.Vue的双 ...
- vue设置cookie的domain无效_【Vue.js入门到实战教程】16Tailwind 与 Bootstrap 的区别和使用入门...
来源 | https://xueyuanjun.com/post/22065我们知道,从 Laravel 8 开始,自带前端脚手架代码默认兼容 Tailwind CSS 框架,取代了之前的 Boots ...
- 前端开发技术:HTML5 JS 前端开发主要功能!
HTML5广义上讲是前端开发学科的代名词,包含HTML5.CSS3及JavaScript三个重要的部分,是运行在浏览器上应用的统称.如PC端网站.管理系统.手机网页应用(WebApps).混合应用(H ...
- 走进Vue.js 1.0-姜威-专题视频课程
走进Vue.js 1.0-16818人已学习 课程介绍 Vue.js是一个用来开发web界面的前端框架,小巧的外表,不失优雅的代码结构.全新的MVVM理念.以及不乏工匠精神的周边工具. ...
- 【哈士奇赠书活动 - 24期】-〖前端工程化:基于Vue.js 3.0的设计与实践〗
文章目录 ⭐️ 赠书 - <前端工程化:基于Vue.js 3.0的设计与实践> ⭐️ 内容简介 ⭐️ 作者简介 ⭐️ 精彩书评 ⭐️ 赠书活动 → 获奖名单 ⭐️ 赠书 - <前端工 ...
- Vue.js入门教程(适合初学者)
Vue.js入门教程 Vue官网网址:Vue.js 中文网 Vue.js Vue.js是渐进式JavaScript 框架,是一套构建用户界面的渐进式框架.也可以说Vue.js 是一个用来构建网页界面的 ...
- js模板字符串自定义类名_【Vue.js 入门到实战教程】07Vue 组件注册 | 基本使用和组件嵌套...
来源 | https://xueyuanjun.com/post/21929除了前面介绍的基本语法之外,Vue.js 还支持通过组件构建复杂的功能模块,组件可以称得上是 Vue.js 的灵魂,是 Vu ...
- 前端开发工程师(VUE框架)招聘
前端开发工程师(VUE框架) 岗位职责: 1.熟练运用HTML/JS/CSS等前端技术,精通JavaScript.Ajax.DOM.html.css等前端技术 2.熟练使用VUE前端框架,理解VUE框 ...
最新文章
- 【Smart_Point】动态内存与智能指针实战:文本查询程序(设计set,map,智能指针的应用)
- Microsoft Visual Studio 2005 简体中文专业版(DVD)下载地址
- 脆弱的Scrum,敏捷在哪里?
- gbk文件转为utf8文件
- 滴水穿石-05数组排序
- 在虚拟机上装win2003 server心得体会
- MyEclipse10 中设置Jquery提醒,亲测可用
- 【Linux】 C++编程(vim)
- Android 使用URLConnection来post数据
- DAVIS Driving Dataset 2020 (DDD20) 【转载】
- 从零搭建飞冰微前端项目《第三篇:搭建微应用》❤️
- What kind of new area will CFun and creation form?
- 在delphi 获取特殊目录 SHGetSpecialFolderLocation SHGetPathFromIDList
- 大疆 L1 任务文件格式说明(CLC/CLI/CMI/IMU/LDR/MNF/RTB/RTK/RTL/RTS/JPG/MOV)
- ant build.xml 配置详解
- 小程序钉钉语音录入组件
- 原生JavaScript类型判断
- 图像分类,看我就够啦!
- linux系统一直循环登录界面,Ubuntu卡在登陆界面无限循环的问题
- QT的Listwidget控件使用