Gulp

1、第三方模块gulp,基于node平台开发的前端构建工具,将机械化操作编写成任务,想要执行机械化操作时,执行一个命令行命令任务就能自动执行了。
2、Gulp能做什么?(1、项目上线,html、css、js文件压缩合并(2、语法转换(3、公共文件抽离(4、修改文件浏览器自动刷新
3、gulp中提供的方法:gulp.src()获取任务要处理的文件;gulp.dest()输出文件;gulp.task()建立gulp任务;gulp.watch()监控文件的变化
4、抽取公共文件并压缩:先在src里建立common文件夹,文件夹里建立header文件,把公共部分抽取存在此处。在被抽取的文件里通过@@include再进行引入,最后执行npm install gulp-file-include 。先是抽取,再压缩。
5、gulp插件使用方法:1、下载插件 2、引用插件 3、调用插件
6、node-modules文件夹的问题:1)文件夹及文件过多过碎,当我们将项目整体拷贝给别人的时候,传输的速度会很慢。2)复杂的模块依赖关系需要被记录,确保模块的版本和当前保持一致,否则会导致当前项目报错。
7、package.json文件的作用:为项目描述文件,记录了当前项目信息,例如项目名称、版本、作者、github地址、当前项目依赖了哪些第三方模块等,使用npm init-y命令生成。
8、项目依赖:在项目的开发阶段和线上运营阶段,都需要依赖的第三方包,称为项目依赖。使用npm install包命令下载的文件会被默认添加到package.jason文件的dependencies字段中。
9、开发依赖:在项目的开发阶段需要依赖,线上运营阶段不需要依赖的第三方包,称为开发依赖。使用npm install包名–save
-dev命令将包添加到package.jason文件的devdependencies字段中。
10、package-lock.json文件的作用
(1、锁定包的版本,确保再下载时不会因为包版本不同而产生问题。
(2、加快下载速度,因为该文件中已经记录了项目依赖第三方包的树状结构和包的下载地址,重新安装时只需下载即可,不需要做额外的工作。
11、URL:统一资源定位符,又叫URL,是专为标识internet网上资源位置而设的一种编址方式,即我们平常说的网页地址
URL组成:传输协议//服务器ip或域名:端口//资源所在位置标识
12、HTTP协议,又叫超文本传输协议。规定了如何从网站服务器传输文本到本地浏览器,它基于客户端服务器架构工作,是客户端和服务器端请求和应答的标准。
13、报文:在HTTP请求和响应的过程中传递的数据块就叫报文,包括要传送的数据和一些附加信息,并且遵守规定好的格式。
14、请求方式(req.method):get 请求数据 post发送数据
15、请求地址(req.url) req.headers请求报文
16、响应报文
(1、http状态码 200请求成功;404请求的资源没有被找到;500服务器端错误;400客户端请求语法有错误
17、客户端向服务器端发送请求时,有时需要携带一些客户信息,客户信息需要通过请求参数的形式传递到服务器端,比如登录操作。
18、GET请求参数:参数被放置在浏览器地址栏中。
19、POST请求参数:post参数是通过事件的方式接收的。参数被放置在请求体中进行传输;获取POST参数需要使用data事件和end事件。使用querystring系统模块将参数转化为对象格式。
20、路由是指客户端请求地址与服务器端程序代码的对应关系。简单来说,就是请求什么响应什么。
21、静态资源:服务器端不需要处理,可以直接响应给客户端的资源就是静态资源,例如css、js、html、image文件等。
22、动态资源:相同的请求地址不同的响应资源。
23、静态资源访问步骤:首先通过req.url获取用户大的请求路径,再把请求路径转换为文件在服务器上的真实物理路径,然后读取文件的内容,最终把读取的内容再返回给客户端。
24、同步API和异步API最大的区别是:同步API是可以通过返回值拿到结果的,但是异步API不行。【异步api的返回值是通过回调函数拿到的,回调函数就是自己定义函数让别人调用】
25、同步API从上到下依次执行,前面的代码会阻塞后面代码的执行。异步API不会等待API执行完成后再执行后面的代码。
26、事件处理函数就是回调函数,事件监听的API就是异步API。
27、promise出现的目的是解决node.js异步编程中回调地狱的问题。
28、异步函数是异步编程语法的终极解决方案,它可以让我们将异步代码写成同步的形式,让代码不再有回调函数嵌套,使代码变得清晰明了。
29、在普通函数前面加上async关键字,普通函数就变成了异步函数。
异步函数默认的返回值是promise对象。在异步函数内部使用throw关键字进行错误的抛出。
30、await关键字:它只能出现在异步函数中;await 它可以暂停异步函数向下执行,等待promise对象返回结果后再向下执行;
await promise await后面只能写promise对象,写其他类型的API是不可以的。
31、async关键字:(1、普通函数定义前家async关键字,普通函数变成异步函数。(2、异步函数默认返回promise对象。(3、在异步函数内部使用return关键字进行结果返回,结果会被包裹在promise对象中,return关键字代替了resolve方法。
(4、在异步函数内部使用throw关键字抛出程序异常。
(5、调用异步函数再链式调用then方法获取异步函数执行结果。
(6、调用异步函数再链式调用catch方法获取异步函数执行的错误信息。
32、promisfy改造现有的异步函数APi,让其返回promise对象,从而支持异步函数语法。
33、在浏览器中全局对象是window,在node中全局对象是global。
34、

上一篇:Sb1:System.Environment.CurrentDirectory避坑指南


下一篇:day21