- 博客(122)
- 收藏
- 关注
原创 npm 发布scope包的注意点
注意点 publish默认发布私有包,package的private属性无效,必须使用: npm publish --access=public 组织包需要先创建团队(团队被删掉,包就没了!) 2种方式,效果看起来都是一样的 效果 非组织包:以npm账户名为前缀, { "name": "@ifgm/form", "private":false, "version": "1...
2019-07-21 09:13:47
2000
原创 JS实现定时任务(简略版)
const schedule = (function () { function extractRuleList(arr) { let flatArr = [ arr, ] let tpl = null let temp = null for (let i = 0; i < ar...
2019-07-12 17:53:28
867
原创 【dart-sass】/deep/、>>>的问题
使用 ::v-deep 即可 参考资料 https://github.com/dart-lang/angular/issues/454 G:\test\vue-cli-dart-scss\node_modules\@vue\component-compiler-utils\CHANGELOG.md ### Features * implement ::v-deep as...
2019-07-11 18:04:41
4761
原创 好玩的SKU
function singleSku(a, b) { // const result = a.concat(b) // 变异版本 const result = [] let i = 0, j = null for (; i < a.length; i++) { j = 0 for (; j < b.length; j++...
2019-07-09 09:12:41
303
原创 position、盒模型的故事
可以看出来,和margin没什么关系、、 <body> <style> * { margin: 0; padding: 0; } .container { position: relative; padding: 40px; margin: 40px; ...
2019-06-26 22:41:19
173
原创 margin、padding、position的故事
4个例子,margin同理 正常使用: <body> <div style="width:1200px;height: 400px;background-color: blue;"> <div style="padding-top: 10%;"> <p style="position: relative"> ...
2019-06-26 22:03:28
297
原创 require.context
const components = {} const fileLoader = require.context('./', false, /.*\/(?!\bindex\b).*\.vue/) // 形式[./a.vue],dou fileLoader.keys().forEach(path => { const fName = path.match(/....
2019-06-25 16:19:19
625
原创 js2jscode
const js2jscode = (function() { function main(target) { const targetType = Object.prototype.toString.call(target).match(/\[object\s(.*?)]/)[1]; let code = ''; switch (targ...
2019-06-21 08:50:09
652
原创 OPTIONS请求调优
# 触发条件 - 必须,跨域 - 必须,符合预检请求 # 优化方案 - 前提,浏览器需关闭disabled cache,https://my.oschina.net/mobinchao/blog/908834 - 原理,Access-Control-Max-Age # demo const http = require('http'); http.createS...
2019-06-15 11:11:19
1294
原创 util
设计通用函数,帮助别人,提升自己~ function findTree(data,childKey,filter){ for(let i = 0;i < data.length;i++){ const item = data[i]; if(filter(item))return item; if(item[childKey]){ const target = fi...
2019-05-13 16:05:01
164
原创 跨域操作
XHR 1、设置Access-Control-Allow-Origin <a>的download属性 canvas使用跨域图片时,getImageData()、toDataURL() 1、设置Access-Control-Allow-Origin 2、同时,<image/>设置crossOrigin属性,值为anonymous(或者空字符串) ...
2019-05-06 09:12:26
249
原创 delete操作符
文档:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/delete,更靠谱 # 不能删除 - 不会删除原型链上的属性;是不会,不是不能 class A{ log(){} } const a = new A(); a.log; // func a.hasOwnProperty('...
2019-04-26 13:50:54
171
原创 echarts记录贴
说起来,基本不用echarts... 饼图内圈 横向柱状图(圆角+渐变):https://blog.csdn.net/maxwell0401/article/details/72861035 function getIndexRichStyle(config = {}) { return Object.assign({ align: 'center', ...
2019-04-16 19:58:09
240
原创 未完。未命名
## ::函数绑定符 *https://www.wengbi.com/thread_109935_1.html - 一元 - 多元(支持链式)
2019-04-15 16:37:56
586
原创 好玩的.css样式表&变量+换肤
集合:可通过索引获取对应的元素 rule:规则,样式表由规则组成,规则由属性组成 ## document.styleSheets,所有样式表(<style>、<link>)的集合 ##document.styleSheets[0].cssRules,当前样式表下,所有rule的集合,有个索引的概念 const styleSheet = document.cre...
2019-04-12 09:55:08
399
原创 好玩的.textarea拾遗
- <textarea>没有value属性,默认值可以这样设置<textarea>放在标签里就好啦</textarea> - dom节点,和input输入框一样,可以使用defaultValue获取默认值,使用value获取当前值。 ①textContent也可以获取,②defaultValue会一直帮你保存,不会改变。 附送应用场景一个 // d...
2019-04-10 10:04:05
177
原创 好玩的.通过url下载文件(动态生成文件)
在原来代码中发现一个接口,直接使用url就可以下载文件,没有特殊的地方, 研究了一下,原来是靠响应头实现的。 // server.js const http = require('http'); function middleware(req,res){ // 核心,因为使用location.href = url,所以设置window-Target, res.setHea...
2019-04-09 09:35:15
759
原创 好玩的.红包算法
可能不太公平,但是不会超过边界。 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>red-pack</title> </head> <body> <script> funct...
2019-04-04 10:26:03
139
原创 好玩的.async
## 如果没有await,asycn function其实是同步的! // 同步 let count = 0; async function fn(index = 0) { count++; if (index === 5) { return Date.now(); } // a...
2019-04-03 15:29:56
230
原创 好玩的.日历
不是算法,因为没有计算闰年、平年什么的。 用JS的Date对象实现一个日历,我想这是最简单的方式了吧.. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>calendar</title> </head&g...
2019-04-03 14:42:39
264
原创 好玩的.随机16进制颜色
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X...
2019-03-31 12:35:05
205
原创 vue父子组件挂载
bug-删不掉。。 父组件先开始挂载,挂载途中遇到子组件递归执行渲染流程, 这个渲染是同步的,因为递归的关系,只能等子组件渲染流程完成(mounted),代码才能走到mounted钩子。 从Watcher构造器寻找 this.getter = updateComponent; this.get(); // 准备依赖收集环境(栈的形式),触发getter,完成收集依赖,删除依...
2019-03-29 19:32:37
1112
原创 commonJs
单个导出(exports.test1)、批量导出(module.exports) 使用时一定要注意~ 有个exports.default,没记~ // 首先exports相当于一个代理,exports.test1 = 1 等价于 module.exports.test1 = 1 // a.js exports.test1 = 1; module.exports = {name:'js ...
2019-03-24 20:43:29
1068
原创 好玩的.externals&providePlugin
形成一个闭环~ const Webpack = require('webpack'); module.exports = function (config) { config.externals = config.externals || {}; Object.assign(config.externals, { 'axios': 'axios', 'react': 'Re...
2019-03-24 16:57:02
454
1
原创 好玩的.有趣的proxy
<script> const END = 'end'; class Chain { /* a factory */ // status get END() { return 'end'; } constructor(options) { let curren...
2019-03-20 11:35:57
176
原创 好玩的.进位加、乘法
// utils.js module.exports = { isFloat(...numOrStrs) { const POINT_REG = /\./; return !!numOrStrs.find(item => POINT_REG.test(item)); }, fixLen(a, b, isRight0 = true) {...
2019-03-20 11:29:47
365
原创 好玩的.滑块验证
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X...
2019-03-20 11:26:09
255
原创 JS:严格模式&this
严格模式 禁止隐性声明变量,导致产生全局变量,例如 a = 1 禁止with语句,vue中render函数大量使用with… eval的作用域不再是全局的,而且也是严格模式 delete无法删除变量(只能删除对象、数组咯) arguments与变量分离,不再更新变化 禁止arguments.callee、arguments.caller(已废弃,但是可以用Fun.caller) 对象属性不能重复...
2019-03-16 10:03:53
244
原创 ƒ #<Function> 奇怪的原型链的函数?
const A = function(){}; A.__proto__ = undefined; // or null A.prototype = undefined; // or null console.log(A); // ƒ #<Function> const a = new A(); console.log(a.__proto__ === Object.prototy...
2019-03-15 15:36:25
267
原创 好玩的.HTML传输
const http = require('http'); const { exec } = require('child_process'); const app = http.createServer(router), port = 8080; app.listen(port, function () { exec(`start http://localhost:${port}`);...
2019-03-15 13:52:05
153
原创 好玩的.promise.all2
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>Page Title</title> <met...
2019-03-13 23:21:06
214
原创 position:sticky,粘性定位
https://developer.mozilla.org/zh-CN/docs/Web/CSS/position#Sticky_positioning 1、relative、fixed的结合。 2、不脱离文档流 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT...
2019-03-08 16:06:34
240
原创 DOM2级事件
对象形式的handler、对象形式的EventListenerOptions window.addEventListener(type,handler,EventListenerOptions) <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> &...
2019-03-04 00:10:12
357
原创 children、childNodes
总结: childNodes:获取所有节点:元素1,文本3(包括空文本),注释8。 children:只获取元素节点:元素1 ps. 1、元素1,可以理解为是html标签 2、文本3:包括因为代码换行产生的空文本节点 <!DOCTYPE html> <html lang="en"> <head> <meta charset...
2019-03-03 10:37:26
961
原创 cjs、es6-modules
初识~模块都会只加载一次,被缓存起来 AMD:Asynchronous Module Definition 1、依赖前置:先加载所有依赖,然后依赖注入 // define、require都可以依赖模块 // 先加载所有依赖的模块,顺序是随机的,只要加载完就行 // 例如a、b,b依赖a,结果b先加载完了,就凉凉 // 好像有个shim选项可以解决。。。我错过了这个时代,就不深入...
2019-03-01 11:53:59
5988
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅