概述
在最开始听说vuejs这个词是在2016年,当时天真的认为自己是个后端开发工程师不需要学习太多的前端知识,不过紧接着在2017年在公司就用到了vuejs。对于初学者(尤其是干后端的初学者)来说,刚接触时,有好多思路都很难理解。

本来写这一系列博客,只是为了记录自己在这一段时间学习vuejs的成果。如果有何纰漏请大家多多理解,不喜勿喷…

再说,在目前互联网的调整发展情况下,javascript更是在快速的更新迭代,如今对前端工程师来说,需要会的不只有css+div,js+jq了。近年来,javascript各界大神也发布了很多优秀的框架,如安哥拉(angularjs),Reactjs等。而vuejs更是由国人大神【尤雨溪(Evan You)】主导开发并得到了业界认可的优秀框架。

因此,综合上述种种,本人决定以该系列博客来记录自己的学习过程及问题,在写作时由于本人方案功底薄弱,写的不好希望大家多多见谅。在学习时,参考了另一篇特别好的博客,以下有些内容也借鉴而来,忠心感谢FungLeo,是你们无私的奉献,才让我们有了学习的参考,以下是地址:
http://blog.csdn.net/fungleo/article/details/77575077

基本理念
本文将通过vue-cli+axois+amaze ui+jquery来搭建一个小型的后台管理系统,数据来源使用cnode.js 的公开 api接口。由于该项目属于小型项目,所以不涉及vuex等知识。

前后端分离开发模式
在N年前,我们开发web项目的流程是:
1、设计师设计页面
2、美工将设计稿通过css+div切片成html的页面
3、后端工程师拿切好的html页面
在这种开发模式上有明显的缺点,就是页面出现哪怕只是特别小的问题或是修改很小的功能,也需要前后端工程互相协调开发。对后端工程师来说,并不能更专注的去实现业务逻辑。
所以近年出现在前后端分离开发模式,如下:
1、设计师设计页面
2、前端、后端、测试等其它开发人员约定接口规范(形成接口文档)
3、前端工程师按接口文档来开发前端(前期可模拟接口返回的数据模型)来进行前端的开发
4、后端工程师按接口文档开开发相应接口
与几年前相比,对前端工程师的要求无疑提高了很多,如如何调用接口等。对后端工程师来说却可以更专注的实现业务逻辑。

时代在发展,困难如弹簧,你强它就弱,你弱它就强。所以为了不被时代所淘汰,努力吧!

单页应用程序(SPA)
单页Web应用(single page web application,SPA),就是只有一张Web页面的应用,是加载单个HTML 页面并在用户与应用程序交互时动态更新该页面的Web应用程序。
要想更好的学习SPA,需要大家先了解一下锚点链接:
HTML中的链接,正确的说法应该称作"锚点",它命名锚点链接(也叫书签链接)常常用于那些内容庞大繁琐的网页,通过点击命名锚点,不仅让我们能指向文档,还能指向页面里的特定段落,更能当作"精准链接"的便利工具,让链接对象接近焦点。便于浏览者查看网页内容。类似于我们阅读书籍时的目录页码或章回提示。在需要指定到页面的特定部分时,标记锚点是最佳的方法。
更多关于锚点链接的解释请参见:
https://baike.baidu.com/item/%E9%94%9A%E7%82%B9%E9%93%BE%E6%8E%A5/7472012?fr=aladdin
为什么要用锚点链接,原因是锚点链接并不会使页面进行跳转或刷新。以我们的 vue 项目为例,它的本地 url 结构一般为以下格式:
http://localhost:8080/#/Inbox
可以明显的看到我们所谓的路由地址是在 # 号后面的,也就是利用了锚点的特性。

RESTful 风格接口
URI表示资源的两种方式:资源集合、单个资源。如下:
资源集合:
/zoos //所有动物园
/zoos/1/animals //id为1的动物园中的所有动物
单个资源:
/zoos/1 //id为1的动物园
/zoos/1;2;3 //id为1,2,3的动物园
更多关于RESTful 风格接口的解释请参见:
http://blog.csdn.net/yue7603835/article/details/52536497

VUE是什么?
目前业界主流的前端三大框架:angular、react、vue,目前angular正处于新旧交替所以不选择,剩下的两个都非常优秀,但是vue的学习成本要比react低好多。同样都优秀的框架,我们选择vue,只因为两个字“简单”。

vuejs是一个前端框架,并不只是官网下载下来的一个vue.js文件。官方的解释:
Vue.js (读音 /vjuː/,类似于 view) 是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层,它不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与单文件组件和 Vue 生态系统支持的库结合使用时,Vue 也完全能够为复杂的单页应用程序提供驱动。
如果你是有经验的前端开发者,想知道 Vue.js 与其它库/框架的区别,查看对比其它框架。
更多关于vuejs的解释请参见:
https://cn.vuejs.org/v2/guide/

在上面提到了Vue的核心库,我们来看一下都有哪些核心库,如下:
1、vue.js 核心,不解释。
2、VueRouter2 实现路由组织工具。
3、webpack 项目打包以及编译工具。
4、nodejs 前端开发环境。
5、npm 前端包管理器。
6、axios ajax 接口请求工具。
7、sass-loader 和 node-sass css 预处理。
8、element 基于 vue 的后台组件库。
9、iview 基于 vue 的另一套后台组件库。
10、vue-cli vue 项目脚手架。一键安装 vue 全家桶的工具。

命令行的重要性
在学习vue时,我们会经常用到一些命令,如npm install、npm run dev等,这是vue-cli对我们提供的一些命令,现在的前端,不会点命令出去找工作都不好意思说自己是前端了。希望在初学vue或其它前端框架时,不要抵触命令行,因为它
1、更好
2、更快
3、更强
4、更装逼

第一篇文章,基本没有代码,接下来我们就要开始慢慢的揭露vue神秘的面纱了。

一、VueJs 填坑日记之基础概念知识解释的更多相关文章

  1. 二、VueJs 填坑日记之基础项目构建

    在上一篇文章中,大致介绍了一下本系列博文以及学习vuejs我们需要了解的一些概念,希望大家认真阅读,所谓知己知彼,百战百胜,学习也一样,工欲善其事,必先利其器,要想学好vuejs,那前提的概念一定要熟 ...

  2. 三、VueJs 填坑日记之项目文件认识

    上一篇博文,我们搭建了一套基础的vuejs的环境,首先安装node.js,然后利用npm包管理器,安装vue-cli,设置淘宝镜像,初始化项目,安装依赖,运行.在这一篇,我们将认识vuejs项目里的各 ...

  3. 六、VueJs 填坑日记之初识*.Vue文件

    上一篇博文中,我们将接口的地址通过webpack代理到了本地,解决了跨域的问题.在之前的文章中,我们一直对项目进行配置,并没有真正的切入正题,可能很多人还不明白我们要做什么?那么今天,我们就要开写代码 ...

  4. 七、VueJs 填坑日记之渲染一个列表

    在上一篇博文中,我们对vue组件有了一个简单的认识和大概的理解.在之前认识项目结构的时候,我们在/src目录中创建了一个components的文件夹,而今天就要用到了,这个文件夹的作用就是放置我们的自 ...

  5. 八、VueJs 填坑日记之参数传递及内容页面的开发

    我们在上一篇博文中,渲染出来了一个列表,并在列表中使用了router-link标签,标签内的:to就是链接地址,昨天咱们是<router-link :to="'/content/' + ...

  6. 十、VueJs 填坑日记之在项目中使用Amaze UI

    上一篇博文,我们把jQuery集成到了项目中,今天我们来集成Amaze ui(妹子UI).先来介绍一下妹子UI.Amaze UI 含近 20 个 CSS 组件.20 余 JS 组件,更有多个包含不同主 ...

  7. 十一、VueJs 填坑日记之使用Amaze ui调整列表和内容页面

    上一篇博文我们整合了Amaze ui,并且调整了一个头部header和底部footer文件,其实做起来也很简单,只要按照步骤来做,完全没有问题.今天我们来重新调整一下列表页面和内容页面,使我们做的后台 ...

  8. 四、VueJs 填坑日记之搭建Axios接口请求工具

    上一章,我们认识了项目的目录结构,以及对项目的目录结构做了一些调整,已经能把项目重新跑起来了.今天我们来搭建api接口调用工具Axios.Vue本身是不支持ajax调用的,如果你需要这些功能就需要安装 ...

  9. 五、VueJs 填坑日记之将接口用webpack代理到本地

    上一篇博文,我们已经顺利的从cnodejs.org请求到了数据,但是大家可以注意到我们的/src/api/index.js的第一句就是: // 配置API接口地址 var root = 'https: ...

随机推荐

  1. TableView的性能优化

    现在市场上的iOS应用程序界面中使用最多的UI控件是什么? 答案肯定是UITableView,几乎每一款App都有很多的界面是由UITableView实现的,所以为了做出一款优秀的App,让用户有更好 ...

  2. 面试题:使用LinkedList来模拟一个堆栈或者队列数据结构

    请使用LinkedList来模拟一个堆栈或者队列数据结构. 堆栈:先进后出 First In Last Out  (FILO) 队列:先进先出 First In First Out  (FIFO) 我 ...

  3. UVa225,Golygons

    刘儒家翻译的走出的图形可以自交,不知道大家是怎么理解的,反正我是认为这句话的意思是告诉我允许一个点访问多次 这样是WA的,n=15和n=16时多输出很多数据,应该是不允许自交,也就是不允许一个点访问多 ...

  4. Linux入门(4)——Ubuntu16.04安装MATLAB2016b

    通常有三个安装文件: Matlab 2016b Linux64 Crack.rar R2016b_glnxa64_dvd1.iso R2016b_glnxa64_dvd2.iso sudo apt i ...

  5. ELK系列~对fluentd参数的理解

    这段时候一直在研究ELK框架,主要集成在对fluentd和nxlog的研究上,国内文章不多,主要看了一下官方的API,配合自己的理解,总结了一下,希望可以帮到刚入行的朋友们! Fluentd(日志收集 ...

  6. windows消息简单应用实例

    //基本定义 internal class MyMessager : IMessageFilter { public bool PreFilterMessage(ref Message m) { // ...

  7. yii2之依赖注入与依赖注入容器

    一.为什么需要依赖注入 首先我们先不管什么是依赖注入,先来分析一下没有使用依赖注入会有什么样的结果.假设我们有一个gmail邮件服务类GMail,然后有另一个类User,User类需要使用发邮件的功能 ...

  8. 用linux文件处理三剑客将微信群成员导出的方法

    工具: Mac/Linux 系统 Chrome Linux命令:vi.cat. wc. grep. awk. sed.sort. uniq 步骤: 1.微信网页版登陆: https://wx.qq.c ...

  9. asp.net上传文件限制解决方案

    环境:VS2012,IIS7 利用web uploader实现了一个文件上传的功能,但是遇到上传大小的限制,在web.config的<system.web>节点下添加如下代码: <h ...

  10. C#读写Shapefile

    Shapefile文件是ArcGIS存储矢量要素的标准格式,要读写Shapefile最简单的方法当然是基于ArcObject(或者ArcEngine)开发,不过网上也有一些开源的解译Shapefile ...