兰亭古墨

Results 16 comments of 兰亭古墨

胖哥,想请教下右侧目录模块的实现

> 寄生组合式继承的基本思想是为了解决组合继承的缺点,组合继承调用了两次父构造函数,生成了两个实例属性,只不过实例上的覆盖了原型上的属性。用了寄生式继承的方法,将子类原型指向父类原型,一般是Object.create() 与 Object.setPrototype() > 缺点: 感觉还是父类原型中的引用类型值会被所有下面的实例共享,一个改变,其它都变了,, 这位兄台,对于 “父类原型中的引用类型值会被所有下面的实例共享” 这个缺点,你可以在父类原型上定义一个函数 return 出一个对象就可以了吧,这样每次修改子类实例中继承来子父类原型共享属性都不会其他子实例的修改而变化了

“获取布局信息时,会导致重排。” 这句话是否有问题? 如果 ```js console.log(element.offsetTop); ``` 应该不会触发重排吧?

"从例子中可以看到,一些重复的功能开发者需要在 componentDidMount 和 componentDidUpdate 重复编写", 如果这个更新 document.title 的逻辑只在 componentDidUpdate 钩子函数内写,逻辑依然跑的通,所以从这个 “例子”得出这个结论是不是证据不充分呢?

博客做的挺好的

same problem!build error when use element-plus ``` [vite-ssg] An internal error occurred. [vite-ssg] Please report an issue, if none already exists: https://github.com/antfu/vite-ssg/issues node:internal/errors:477 ErrorCaptureStackTrace(err); ^ TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension...

> ``` > [vite-ssg] An internal error occurred. > [vite-ssg] Please report an issue, if none already exists: https://github.com/antfu/vite-ssg/issues > node:internal/errors:464 > ErrorCaptureStackTrace(err); > ^ > > TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown...

bind 优化版本:考虑 bind 后返回的函数作为构造函数被 new ```js Function.prototype.bind = function(context, ...args) { const self = this; const fn = function(...newArgs) { self.apply(this instanceof fn ? this : context, args.concat(newArgs)); }; fn.prototype...

话不多说,看码! ```js // 1、基本架构: // 状态 // then // 执行器函数 executor // 2、executor、resolve、reject // 3、then 同步下调用 // 4、then 异步下调用 // 5、then 链式调用 // 返回 Promise // then 函数递归返回常量结果,供下个 then 使用...