美文网首页
ECMAScript6--1.项目构建

ECMAScript6--1.项目构建

作者: 飞菲fly | 来源:发表于2017-10-17 16:12 被阅读36次

ES6在浏览器直接是跑不起来的;

1.基础架构

  • 前端架构思想
    (需要放哪些目录、哪些文件、为什么要这么放、合理性在哪、结合之前说的模块化, 整个围绕技术架构去做--如何创建一个前端项目基础架构组的关系)

  • 业务逻辑
    --页面 html、css
    --交互 js(操作页面和服务器交互)

  • 自动构建

  • 辅助的js脚本
    (把业务逻辑方面的js和资源文件做一个处理最后上线)

  • 编译
    把ES6编译成ES5甚至是ES3;看项目需要(大多数公司已经支持到IE8)
    (IE6/7/8跑ES5是不可行的,ES5也不是所有浏览器都支持的,需要编译到ES3才能让低级浏览器去执行)

  • 辅助

    • 自动刷新
      页面中引入了a.js,当a.js内容发生变化的时候,(之前的做法是主动刷新这个页面),引发了自动编译,编译以后又自动的帮我们刷新浏览器(非常实用可以让开发效率变的很高)

    • 文件合并

    • 资源压缩
      js、css压缩、图片转成base64编码

    • 服务接口
      (promise、异步操作、数据结构变换依赖服务接口)部署一个服务器让服务器提供一些数据、接口
      --数据
      --接口

2.任务自动化(gulp)
--sass转成css让浏览器识别,有一个编译的过程。

编译:开发用的是这个语言,真正让浏览器识别的是另一种语言;中间有一个编译的过程; 这个过程需要自动化处理,包括文件合并、项目依赖、文件压缩、模块化依赖;

怎么去做自动依赖编译的呢?
* 涉及自动化任务;
* 让机器自动去完成,目标减少人工操作、提高效率;

什么是任务自动化
--减少人工操作,让机器自动监听所有的操作,然后响应;

什么是gulp
--gulp就是用来解决自动化构建工具的,增强你工作流程的工具;
(gulp流行之前是grunt的天下,grunt自身的缺点:项目复杂以后操作慢,尤其是级联操作,因为它不是文件流操作过程,所以它会变化慢;gulp通过stream流的一个方式操作文件,使级联操作非常快,后来gulp就非常流行)

gulp的作用
--完成任务自动化,帮你工作流非常顺畅去做这件事;(背后是NodeJs去做开发的,提供了很多插件)
利用gulp的很多插件完成各项任务task,通过不同task的组合去完成各项复杂的东西,让开发过程中的一些操作都自动化处理;

了解如何使用gulp完成任务自动化
--看gulp中文文档;api简单,功能非常强大;
-学习gulp的方式:
==去gulp中文网了解基本的api和有哪些实用的插件,
通过实例做的项目构建中用到的大量的gulp脚本,学会如何用gulp解决ES6这个项目构建;

3.编译工具(babel、webpack)
任务自动化是做这个事的,任务自动化需要借助编译工具去完成每一步的操作;
比如:编译sass有sass做的编译工具;
编译ES6
(babel是专门编译ES+6代的,编译成ES5,让浏览器识别的一个功能;)
webpack
(处理模块化项目依赖的关系的;)
--比如文件b.js,b.js这个模块要依赖a.js这个模块,
ES6写法:
import a.js
编译b.js的时候会把a.js自动打印编译过来;

什么是babel、webpack
babel可以理解是javascript的编译器;ES6本身不能直接在浏览器上运行的,需要编译,要编译的工具就是babel;
( 现在babel非常流行的,不管是用vue.js还是React.js背后只要用了ES6都是用babel做编译);
webpack:解决模块化的一个工具

bable的核心用法
bable怎么用,怎么解决兼容性问题,怎么去做编译,和gulp结合应该引用哪些包,从而能完成一个ES6的编译;

了解webpack及webpack-stream的作用
webpack-stream是webpack对gulp的一个支持;(gulp是通过stream(二进制的流去操作的)的方式去做的),
webpack在gulp上是用webpack-stream去做的

4.代码实现
*创建一个ES6的前端工程
--完成目录结构、自动构建、服务器搭建
gulp --watch 构建命令

---项目怎么一步一步完成构建后续会专门弄出来写;

相关文章

  • ECMAScript6--1.项目构建

    ES6在浏览器直接是跑不起来的; 1.基础架构 前端架构思想(需要放哪些目录、哪些文件、为什么要这么放、合理性在哪...

  • Flink应用开发

    项目构建 项目模板 Flink应用项目可以使用Maven或SBT来构建项目,Flink针对这些构建工具提供了相应项...

  • maven常用命令介绍

    一、Maven的基本概念 主要服务于基于Java平台的项目构建,依赖管理和项目信息管理。1.1、项目构建 项目构建...

  • 二.Jenkins项目构建

    1. Jenkins项目构建类型 自由风格软件项目 Maven项目 流水线项目 1.1 自由风格软件项目构建 下面...

  • 从零开始构建Spring项目

    在Eclipse中构建Spring项目 目录 0 构建项目1 修改项目 pom.xml2 修改项目 web.xml...

  • Jenkins+kubernetes(第2节)

    Jenkins构建maven项目 jenkins中自动构建的项目类型有 自由风格软件项目(FreeStyle Pr...

  • 12-Maven

    依赖管理、项目构建和统一的项目结构。 1 依赖管理 2 项目构建 2.1 插件 插件与构建的生命周期绑定,mave...

  • 项目构建

    项目构建 多个开发者共同开发一个项目,每位开发者负责不同的模块,这就会造成一个完整的项目实际上是由许多的“代码版段...

  • 项目构建

    项目构建 gulp 合并、编译、压缩等 简单 使用 webpack 合并、编译、压缩等 强大 使用

  • 项目构建

    Android项目框架搭建(一) https://blog.csdn.net/zhangqunshuai/arti...

网友评论

      本文标题:ECMAScript6--1.项目构建

      本文链接:https://www.haomeiwen.com/subject/mdmduxtx.html