preact 编译后 vnode 的内部属性被重命名了是怎么回事?

发布于 2022-09-13 23:55:31 字数 791 浏览 17 评论 0

vnode 的源代码如下:

const vnode = {
    type,
    props,
    key,
    ref,
    _children: null,
    _parent: null,
    _depth: 0,
    _dom: null,
    // _nextDom must be initialized to undefined b/c it will eventually
    // be set to dom.nextSibling which can return `null` and it is important
    // to be able to distinguish between an uninitialized _nextDom and
    // a _nextDom that has been set to `null`
    _nextDom: undefined,
    _component: null,
    _hydrating: null,
    constructor: undefined,
    _original: original == null ? ++vnodeId : original
};

但是在运行时将 vnode 打印出来,发现所有以下划线开通的组件都被重命名了。然后把相关的运行时代码打印出来,发现代码中的相关属性都已经被重命名了,如下图:
image.png
属性名都变得不可读,不方便学习 preact 的内部实现。
有人知道怎么关闭这个重命名功能吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

遗心遗梦遗幸福 2022-09-20 23:55:31

这是 terser 实现的功能,在项目根目录中的 mangle.json 文件里做了配置。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文