webpack 如何禁止加载React Devtools后端脚本

7bsow1i6  于 2022-11-13  发布在  Webpack
关注(0)|答案(3)|浏览(213)

在生产中,react_devtools_backend. js无论如何都在加载,它会减慢我的网站在生产中的速度。如何禁用加载此react devtools?我使用的是react 16.8,reactSSR,webpack 4.29,apollo
我已经用过了

new webpack.DefinePlugin({
      '__REACT_DEVTOOLS_GLOBAL_HOOK__': '({ isDisabled: true })'
    }),

if (typeof window.__REACT_DEVTOOLS_GLOBAL_HOOK__ === "object") {
    for (let [key, value] of Object.entries(window.__REACT_DEVTOOLS_GLOBAL_HOOK__)) {
        window.__REACT_DEVTOOLS_GLOBAL_HOOK__[key] = typeof value == "function" ? ()=>{} : null;
    }
}

<script>
        if (typeof window.__REACT_DEVTOOLS_GLOBAL_HOOK__ === 'object') {
            __REACT_DEVTOOLS_GLOBAL_HOOK__.inject = function() {};
        }
</script>

且这

const disableReactDevTools = (): void => {
    const noop = (): void => undefined;
    const DEV_TOOLS = (window as any).__REACT_DEVTOOLS_GLOBAL_HOOK__;

    if (typeof DEV_TOOLS === 'object') {
        for (const [key, value] of Object.entries(DEV_TOOLS)) {
            DEV_TOOLS[key] = typeof value === 'function' ? noop : null;
        }
    }
};

有什么想法吗?

ni65a41a

ni65a41a1#

不确定这是否是你要找的答案,但它似乎是加载的结果,已安装的扩展。
当我打开一个匿名窗口时,它没有被加载。

x3naxklr

x3naxklr2#

其从chrome扩展加载:React Developer Tools您可以转到“网络”选项卡,找到冗余脚本(单击它)。然后您可以转到“启动器”选项卡-在那里您将看到它的来源。

fruv7luv

fruv7luv3#

这是真的,它是通过“React Developer Tools”扩展下载的。请尝试关闭该扩展,然后刷新页面。您将看到没有发送任何请求。

相关问题