公司注册资金需要实际缴纳吗,长沙百度网站排名优化,家具公司网站源码,游戏攻略网站怎么做前端讲究 工程化#xff0c;模块化#xff0c;组件化#xff0c;层层递进。
一、工程化
工程化是整个工程的结构、样式和动作分离#xff0c;工程化是一种思想而不是某种技术#xff08;当然为了实现工程化我们会用一些技术#xff09;。各种规范、技术选型、项目构建优…前端讲究 工程化模块化组件化层层递进。
一、工程化
工程化是整个工程的结构、样式和动作分离工程化是一种思想而不是某种技术当然为了实现工程化我们会用一些技术。各种规范、技术选型、项目构建优化JS/CSS模块机、UI组件化等。 前端工程化就是用做工程的思维看待和开发自己的项目而不再是直接撸起袖子一个页面一个页面开写。
在配置初始项目文件结构和基本文件依靠命令行工具自动生成 代码构建: webpack脚手架*cli用于创建项目目录结构。确定代码规范缩进换行以及各种预编译工具lesscoffee保证输出代码的标准一致对JS文件是否规范化进行单元测试。不用手动复制到jshint上去检测现在配置grunt监听文件变动自动检验显示检验结果还可以通过配置构建工具自动刷新浏览器实现文件实时变动监听配置一下 gruntgulp可以做自动任务实时编译并且监测文件改变而做出响应用工具自动打包上传到服务器
二、模块化
页面由多个模块作用形成互相不干扰用的时候再加载可引入各种其他模块jscss扩展性高。模块化是将之前一笼统的页面分成由若干个模块作用形成的页面这个过程思想叫模块化。
定义模块 根据CommonJS1规范一个单独的文件就是一个模块。每一个模块都是一个单独的作用域也就是说在该模块内部定义的变量无法被其他模块读取除非定义为global对象的属性。模块输出 模块只有一个出口module.exports对象我们需要把模块希望输出的内容放入该对象。加载模块 加载模块使用require方法该方法读取一个文件并执行返回文件内部的module.exports对象。
三、组件化
组件化将页面视为一个容器页面上各个独立部分例如头部、导航、焦点图、侧边栏、底部等视为独立组件不同的页面根据内容的需要去盛放相关组件即可组成完整的页面。 将之前一笼统的页面改善为一个个单独的组件形成的页面过程思想叫组件化。
规则
页面上的每个独立的、可视/可交互区域视为一个组件每个组件对应一个工程目录组件所需的各种资源都在这个目录下就近维护 由于组件具有独立性因此组件与组件之间可以 自由组合页面只不过是组件的容器负责组合组件形成功能完整的界面当不需要某个组件或者想要替换组件时可以整个目录删除/替换。
保证组件的封闭性。因为JS方面是模块化的。组件的功能界限问题。也就是什么是应该在组件内部实现什么是应该由组件的调用者来实现的。对组件功能界限的定义是只负责UI相关的功能所有的业务逻辑都是从调用者传递过的。也即是写在param.js。所以param.js文件是非常重要的一个文件里面基本包涵了这个页面所有业务处理逻辑。很显然随着页面业务逻辑变的复杂js文件将会变得越来越大。没关系把不同的组件参数分拆到不同的js文件里面去实现然后建个专门的文件夹把它们组织起来。
四、规范化
由具体的前端框架而定目录结构目录命名有约定俗成的意义。如 1、src文件夹存放的是所有的的源代码和其他静态资源比如图片iconfont)。 2、dist文件夹存放的是所有编译后的代码。 3、build文件夹存放的是所有工程化所需要的代码。 4、document文件夹当然存放的文档。 PS模块化和组件化一个最直接的好处就是复用同时我们也应该有一个理念模块化和组件化除了复用之外还有就是分治我们能够在不影响其他代码的情况下按需修改某一独立的模块或是组件因此很多地方我们及时没有很强烈的复用需要也可以根据分治需求进行模块化或组件化开发。 因为在网页端没有模块化编程只是页面JavaScript逻辑复杂但也可以工作下去在服务器端却一定要有模块所以虽然JavaScript在web端发展这么多年第一个流行的模块化规范却由服务器端的JavaScript应用带来CommonJS规范是由NodeJS发扬光大这标志着JavaScript模块化编程正式登上舞台。 ↩︎