自从一年前发布了Vuejs小书的电子书,也有些日子没有碰过它们了,现在因为项目的缘故,需要使用JavaScript全栈开发。所以,我得把这个全栈环境搭建起来。

说起来搭建JS全栈开发环境,设计到的东西真的不少。

大的选择是这样的:

  1. 前端采用Vuejs
  2. 后端采用Nodejs
  3. 存储使用Mongodb。

大的定了,小的也就跟着来,前端配套的话需要:

  1. vue-router,前端路由管理
  2. vuex,前端数据管理,专业一点的说法,就是状态管理,这些数据,可能是属性,数组,对象等等,可以跨组件访问,而不像是data函数那样提供的数据只能被本组件访问,可以想到,稍微大一点的前端工程都必须前端状态管理的。
  3. axios,前端HTTP访问,以promise的形式,封装了类似fetch,AJAX的能力
  4. buefy,前端微型框架,可以使用自定义标签使用自定义组件,并且CSS框架为Bulma
  5. Bulma,尽管使用了微框架,只是让对CSS framework的了解降到最低,但是不是说就不需要了解了。还是得学习的。Bulma相对于老牌的Bootstrap,是不需要依赖于JS框架,也没有任何JS代码,因此可以和任何一框架很好的结合,比如这里的Vuejs。这就是我选择它的原因
  6. webpack&babel。有了vue-cli,对webpack&babel的了解可以降到最低,但是也不能不学,稍微需要一些定制的配置,也是离不开它的。起码得知道如何启动一个开发服务器,已经发布build,还有把前端服务经过proxyChain跳转到后端服务去等等。
  7. vue-cli,前端脚手架工具,它可以把以上的组件整合起来到一个工程内,这是我们的全栈开发的开始,因此这个工具也是需要学习的,尽管它并不难

一个最为基础的vue-cli工程脚手架的创建,现在得需要160M左右的空间占用。在我的电脑和网络情况下,需要2分半的时间才会完成,可见如今的前端开发已经变得越来越复杂了。

接下来看后端,一般习惯就是使用Nodejs+Express.js的搭配。这个没有多少说的,都是老东西了。为了访问Mongodb,也需要一套框架,基于Callback的,或者基于Promise+Await+Async的,也是需要选择的。

为了便于理解,我会用一个最小的案例完成整个开发过程,就是案例在现实中并不存在,但是也是有用的,就是你可以当它们是模板,直接拷贝代码,然后填充你的内容。天下代码一大抄嘛,没有什么不对的,毕竟这些写代码是最快的。这个案例的数据模型就是对一个{id,name}的对象进行CRD(创建删除列表)。

所以,文章会包括这些:

  1. 使用Vuejs脚手架,快速搭建一个{id,name}的对象进行CRD的界面。这里会使用vuex管理状态,使用vue-router管理路由
  2. 使用Mongodb存储和提供后端CRD服务 https://juejin.im/post/5b727a...
  3. 使用Nodejs搭建{id,name}的对象的后端CRD服务
  4. 使用Axios访问后端CRD服务
  5. 整合全栈服务

整个系列,是会采用我的一贯风格,就是不疾不徐,娓娓道来,学习完毕,你可以掌握我提到的全系列的知识,并把它用到你的项目中。

前端说就是一些脚本和标签,其实复杂度真的不低,这篇文章的图,可以窥视到前端复杂的一角了。Modern Frontend Developer in 2018

预告:Javascript全栈开发的系列文章相关推荐

  1. 物联网全栈开发实战系列文章汇总(共865篇,持续更新-2023.05.02)

    物联网全栈开发实战(共865篇) 文章目录 物联网全栈开发实战(共865篇) 1.Arduino单片机系列 1.1 Arduino开发实例(包含各类传感器驱动.通信实例.DIY实例,共114篇) 1. ...

  2. javascript全栈开发实践-准备

    目标: 我们将会通过一些列教程,在只使用JavaScript开发的情况下,实现一个手写笔记应用.该应用具有以下特点: 全平台,有手机客户端(Android/iOS),Windows,macOS,Lin ...

  3. javascript全栈开发实践-web-7

    我们在重构代码之后,重新添加新的功能:添加一个圆形/椭圆的工具. 第一步,增加一个新的按钮: <button id='ellipse' onclick="handleDrawEllip ...

  4. javascript全栈开发实践-web-4

    接下来,我们继续完善功能.作为一个手写应用,undo/redo操作是必须的.要现实undo/redo,最容易想到的实现方式,就是我们记住每一次操作的结果,在用户undo的时候,显示之前的结果给用户就可 ...

  5. 急速JavaScript全栈教程

    自从一年前发布了Vuejs小书的电子书,也有些日子没有碰过它们了,现在因为项目的缘故,需要使用JavaScript全栈开发.所以,我得把这个全栈环境搭建起来. 整个系列,是会采用我的一贯风格,就是不疾 ...

  6. Flask Vue.js全栈开发

    Flask Vue.js全栈开发的 最新完整代码 及使用方式 本系列的最新代码及使用方式将持续更新到: http://www.madmalls.com/blog/post/latest-code/ 1 ...

  7. Python全栈之路系列之数字数据类型

    上篇文章中我们简单的体验了Python语言基本概念与语法,那么在继续深入下去的过程中,不妨先学习几个常见的Python内置数据类型?这也是大部分Python教科书的学习目录,由浅至深,慢慢深入. Py ...

  8. Oracle APEX 系列文章1:Oracle APEX, 让你秒变全栈开发的黑科技

    本文是钢哥的Oracle APEX系列文章中的第一篇,完整 Oracle APEX 系列文章如下:  - Oracle APEX 系列文章1:Oracle APEX, 让你秒变全栈开发的黑科技  - ...

  9. 《JavaScript快速全栈开发》作者Azat Mardanov:现在是拥抱Node技术栈的最佳时机

    非商业转载请注明作译者.出处,并保留本文的原始链接:http://www.ituring.com.cn/article/195742 Azat Mardanov是一位有着12年开发经验的资深软件工程师 ...

最新文章

  1. AI应届生年薪涨到40万了,你现在转行还来得及!
  2. 昨天晚上,亲眼目睹了我一哥们的崩溃,被空降90后上司鄙视,说他这种人在公司......
  3. Android自动化测试工具Appium环境搭建
  4. pythongoogle.probuf.timestamp_数据通信格式:Google Protobuf
  5. Nginx特性验证-反向代理/负载均衡/页面缓存/URL重定向
  6. linux mint 最新版,Linux Mint安装最新版R
  7. 网速慢?不!可能是DNS出了问题! 公共DNS优选之 BAT 百度、腾讯、阿里、谷歌DNS哪个更快?
  8. OpenCV+3计算机视觉++Python语言实现+第二版pdf
  9. 在Android初次的前期学习中的二个小例子(2)
  10. 13亿美元的思想实验
  11. java ip归属地查询_JAVA版IP地址查询调用示例
  12. [算法 笔记]2014年去哪儿网 开发笔试(续)第一题BUG修正
  13. 区间数值计数(洛谷P1980题题解,Java语言描述)
  14. Navicat for MySQL出现1030-Got error 28 from storage engine错误
  15. aspx怎么转成java,Asp.net 2.0 中.aspx请求,即如何生成响应的Html文件(原创)
  16. Java 性能优化系列之1[设计与程序优化]
  17. 微服务浅述---架构演进
  18. Go基础编程:复合类型—切片slice
  19. android ibeacon距离,iBeacon使用蓝牙连接范围精确到1-3米
  20. flv格式怎么转换成mp4?视频格式转换步骤详解

热门文章

  1. 引领深度学习潮流,刷屏计算机视觉顶会,揭秘商汤研究梦之队
  2. 动手学深度学习需要这些数学基础知识
  3. 机器学习之强化学习概览
  4. SAP HUM 如何将HU里的物料号换成另外一个物料号?
  5. 11 个 AI 和机器学习模型的开源框架
  6. visual studio code(vs code)如何更换颜色背景
  7. 循环神经网络(recurrent neural network)(RNN)
  8. 一文说清AI智能平台
  9. 400多家单位、30余万科研人员,10多年奋斗!北斗卫星核心器件实现100%国产!(附:北斗研发建设历程​)...
  10. 2019年中国智能制造发展现状及趋势分析报告