资讯专栏INFORMATION COLUMN

前端工程化

CarlBenjamin / 3114人阅读

摘要:工程化所谓前段工程自动化就是由于前端分裂,有人写代码,有人写,有人写,有人写,那么就需要翻译工具命令行工具翻译成或其他所有浏览器能运行的代码版本。自动化举个例子使用命令行工具实现代码自动化转变。

工程化

所谓前段工程自动化就是:由于前端分裂,有人写css代码,有人写scss,有人写es5,有人写es6,那么就需要翻译工具(命令行工具)翻译成ie或其他所有浏览器能运行的代码版本。

什么是前段工程化,就是要从写html,css,js到写自动化,模块化的html,css,js,并且考虑性能优化

自动化

举个例子:
使用命令行工具实现代码自动化转变。

sass

安装 node-sass 的正确姿势

官方github

sass和scss的关系:语法不同,sass语法更加简洁。

scss完全兼容css语法,他只是在css上添加了一些更高级的语法。

sass工具的作用是将scss语法的文件翻译成普通的语法的css文件

Sass的使用

官方github命令行用法

Sass的使用很简单,记住两条指令即可。

第一条指令如下,意思是编辑input.scss,并输出储存在output.css文件中。指令只编译一次。

node-sass input.scss output.css

第二条指令增加了一个watch功能。同上述指令,编译input.scss储存至output.css。指令编译多次,适用于开发过程中的编译。.scss文件的改动会被检测(watch)并立即编译写入相应的.css文件中。

node-sass --watch input.scss output.css

总结:加--watch(或者-w)监听修改,并立即编译,不加--watch只编译一次

Babel

Babel 转码器 ——阮一峰ECMAScript 6 入门教程

Babel是一个广泛使用的转码器,可以将ES6代码转为ES5代码,从而在现有环境执行。这意味着,你可以用 ES6 的方式编写程序,又不用担心现有环境是否支持。下面是一个例子。(例如ie不支持)

ECMAScript 6 简介

例如:

// 转码前
input.map(item => item + 1);

// 转码后
input.map(function (item) {
  return item + 1;
});

命令行使用方法举例:

将js目录下的js文件转化成到lib目录下(ES6代码转为ES5代码)

web应用的目录规范

工程化中自动化的过程

例如我们有这样的工程目录。

那么我们需要开一个sass监听scss文件的修改,并转换为css,然后放到dist里。
node-sass src/css/ -o dist/css/ -w

再开一个Babel,监听js文件的修改,并将es6转化为es5,然后放到dist里
./node_moudules/.bin/babel src/js/ -d dist/js/ --watch

在监听src/index.html,当index.html文件改变的时候,就复制一份到dist中去。

等等

这样,当你在src目录中修改代码,写代码的时候,dist目录中的代码自动转换成可以上线的代码。这就是自动化的过程。

自动化的过程就是使用命令行工具,把源代码翻译成发布代码
所有的代码需要从src拷贝到disk,如果需要翻译,就中途翻译(sass,babel),不需要翻译就直接拷贝。

所谓前段工程自动化就是:由于前端分裂,有人写css代码,有人写scss,有人写es5,有人写es6,那么就需要翻译工具(命令行工具)翻译成ie或其他所有浏览器能运行的代码版本。还有一个需求是就是缓存,每一次更新代码,都需要自动改js文件中的版本号,这也需要工具自动进行。

但是那么多工具,不能每次写代码都开着吧?于是前端从nodejs出现之后,开始用一个工具代替这些自动化工具,最开始是Grunt(已过时),然后是Gulp,现在开始被webpack替代,所以这就是我们为什么要学习webpack

git上传忽略node_modules
1、在需要创建 .gitignore 文件的文件夹, 右键选择Git Bash 进入命令行,进入项目所在目录。

2、输入 touch .gitignore ,生成“.gitignore”文件。

3、在”.gitignore” 文件里输入你要忽略的文件夹及其文件就可以了。(注意格式)

例如:

node_modules/
dist/
npm-debug.log

作者:懂懂kkw
来源:CSDN
原文:https://blog.csdn.net/jiandan...

一般要忽略node_modules和dist,只上传源文件,然后运行命令,翻译源文件为生产文件。

上传过程:
https://blog.csdn.net/jasonzd...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/98668.html

相关文章

  • 如何成为一名优秀的web前端工程师(前端攻城师)?

    摘要:我从没有听到有人问如何做一名优秀甚至卓越的前端工程师。作为一个优秀的前端工程师还需要深入了解以及学会处理的这些缺陷。再者,优秀的前端工程师需要具备良好的沟通能力,因为前端工程师至少都要满足四类客户的需求。   我所遇到的前端程序员分两种:   第一种一直在问:如何学习前端?   第二种总说:前端很简单,就那么一点东西。   我从没有听到有人问:如何做一名优秀、甚至卓越的WEB前端工程师...

    Turbo 评论0 收藏0
  • 如何成为一名优秀的web前端工程师(前端攻城师)?

    摘要:我从没有听到有人问如何做一名优秀甚至卓越的前端工程师。作为一个优秀的前端工程师还需要深入了解以及学会处理的这些缺陷。再者,优秀的前端工程师需要具备良好的沟通能力,因为前端工程师至少都要满足四类客户的需求。   我所遇到的前端程序员分两种:   第一种一直在问:如何学习前端?   第二种总说:前端很简单,就那么一点东西。   我从没有听到有人问:如何做一名优秀、甚至卓越的WEB前端工程师...

    rubyshen 评论0 收藏0
  • 如何成为一名优秀的web前端工程师(前端攻城师)?

    摘要:我从没有听到有人问如何做一名优秀甚至卓越的前端工程师。作为一个优秀的前端工程师还需要深入了解以及学会处理的这些缺陷。再者,优秀的前端工程师需要具备良好的沟通能力,因为前端工程师至少都要满足四类客户的需求。   我所遇到的前端程序员分两种:   第一种一直在问:如何学习前端?   第二种总说:前端很简单,就那么一点东西。   我从没有听到有人问:如何做一名优秀、甚至卓越的WEB前端工程师...

    mingzhong 评论0 收藏0
  • web前端工程师进阶指南

    摘要:进阶的知识的话就是响应式这一块了,一套代码能适配手机是初级前端工程师的进阶,在北京工资一般在左右。进阶的知识应该是这一块了,当然并不难,了解怎么与后台交互是学习的关键点,在北京的工资一般在左右。 web前端?如果你是一名web前端工程师,那么你将感到幸运,从之前的默默无闻,到后来的给后台工程师打下手,再到巅峰一时。web前端可谓是当下最火的职位之一。 showImg(https://s...

    曹金海 评论0 收藏0
  • web前端工程师进阶指南

    摘要:进阶的知识的话就是响应式这一块了,一套代码能适配手机是初级前端工程师的进阶,在北京工资一般在左右。进阶的知识应该是这一块了,当然并不难,了解怎么与后台交互是学习的关键点,在北京的工资一般在左右。 web前端?如果你是一名web前端工程师,那么你将感到幸运,从之前的默默无闻,到后来的给后台工程师打下手,再到巅峰一时。web前端可谓是当下最火的职位之一。 showImg(https://s...

    fnngj 评论0 收藏0

发表评论

0条评论

CarlBenjamin

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<