npm link

Symlink a package folder

1
2
3
4
npm link (in package dir)
npm link [<@scope>/]<pkg>[@<version>]

alias: npm ln

通俗讲,就是如何使用本地正在开发的包。

阅读更多
js生成html用到的模板
pug EJS Jade 这些模板工具不仅仅可以用来生成 html 内容,也可以用于生成 js 文件。 对比文章
阅读更多
javascript的AST抽象语法树
可以通过ast exploer 网站实时查看生成的抽象语法树。 可以查看https://segmentfault.com/a/1190000012943992 ast 操作的三板斧: 通过 esprima 生成 AST 通过 estraverse 遍历和更新 AST 通过 escodegen 将 ...
阅读更多
CDN学习笔记

1. CDN 定义

CDN 的全称 Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快,更稳定。
通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN 系统能够实时地根据网络流量和各节点的连接,负债情况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。
其目的是使用户可就近取得所需内容,解决 Internet 网络拥挤的状况,提高用户访问网站的响应速度。

产生背景:

BGP 机房虽然可以提升用户体验但是价格昂贵,那么 CDN 的诞生可以提供比 BGP 机房对于用户更好的体验(让地区的同一线路访问当地的同一线路的网站),BGP 机房和普通机房价格将近 5-10 倍的价格差。CDN 使用单线的机房,根据用户的线路以及位置为用户选择靠近用户的位置以及相同的运营商线路,即提升了用户体验价格又降下来了。

CDN 的价值:为客户省钱,同时提升用户体验。

阅读更多
前端js使用crypto-js进行des加密

背景交代

我使用的 react 进行开发,请求数据时,需要把一些常用参数放到 header 中传给服务端,但是由于以前老接口定义的规则,因此需要也这么干。 ###使用的加密库
我使用是cryptos-jshttps://github.com/brix/crypto-js

阅读更多
React高阶组件和Render props
高阶组件 具体而言,高阶组件就是一个函数,且该函数接受一个组件作为参数,并返回一个新的组件 高阶组件就是一个函数,里面封装了业务处理逻辑;只要多个组件的业务逻辑一样,就可以用一个高阶组件,把逻辑封装起来,进行复用,把组件当做参数传递进来显示就行。 本质 是个函数 组件作为参数,可以有其他参数,比 ...
阅读更多
React新特性--context
contextdemo 123456789101112131415161718192021222324252627282930313233343536373839404142import React, { Component, createContext } from "reac ...
阅读更多
javascript原型链容易混淆的相关知识
append append是ParentNode的方法 append()允许追加 DOMString 对象 ParentNode.append() 没有返回值, ParentNode.append() 可以追加多个节点和字符串, appendChild AppendChild是Node的方 ...
阅读更多
HTTP的持久化连接和管线化

什么是持久化连接

所谓持久化连接(长连接),就是当 http 建立了连接通信后,TCP 连接不断开,下次请求可以直接使用,无需再创建 TCP 连接。
持久接的特点是,只要任意一端没有明确提出断开连接,则保持 TCP 连接状态。

阅读更多
JavaScript异步加载的三种方式
1. defer —— 以前适用于 IE,现在适用于所有主流浏览器defer 属性规定是否对脚本进行延迟执行; 这个布尔属性被设定用来通知浏览器该脚本将在文档完成解析后,触发 DOMContentLoaded 事件前执行。如果缺少 src 属性(即内嵌脚本),该属性不应被使用,因为这种情况下 ...
阅读更多