1.说说你对工程的初步理解,结合你之前遇到的问题,说出三个或三个以上能够解决问题或带来价值的工程方案。一切旨在提高效率、降低成本、保证质量的手段都是“工程”。主要解决问题:传统语言或语法的弊端,比如想使用ES6+的新特性,但是存在兼容性问题;想用Less/Sass/PostCSS来增强CSS的可编程性,但是运行环境不能直接支持模块化/组件化我想用模块化的方式来提高项目的可维护性,但是运行环境不能直接支持重复的机械工作.在线部署之前,我需要手动压缩代码和资源文件。在部署过程中,我需要手动将代码上传到服务器。代码风格统一,质量有保证。多人协同开发不能硬性统一大家的代码风格,从仓库拉取的代码质量也得不到保证。依赖后端服务接口支持部分功能。开发时需要提前等待后台服务接口完成。对后端项目的整体依赖2.脚手架除了为我们创建项目结构之外,还有什么更深层次的意义吗?从以下阶段开始:创建项目创建项目结构创建特定类型的文件编码格式代码验证代码样式编译/构建/打包;preview/testWebServer/MockLiveReloading/HMRSourceMapsubmitGitHooksLink-staged持续集成部署CI/CD自动发布3.概述脚手架实现过程,使用NodeJS完成一个自定义小脚手架工具工作流程:通过命令向用户提问lineinteraction->根据用户回答的结果生成文件->动态生成项目文件NodeJSself定义小脚手架的基本用法如下:mkdirmyself-clicdmyself-cliyarninit在生成的包中添加“bin”字段.json文件指定入口文件“cli.js”,添加“cli.js”文件,NodeCLI应用入口文件必须有这样一个文件头#!/usr/bin/envnode文件内容后完成后,yarnlink//发布到全局自客户端//执行持续更新...
