我到处都有console.log。将它们全部删除并不好,因为我可能会再次需要它们。有没有办法为整个react应用程序做这样的事情?
if(env === 'production'){
console.log= function(){}
}
我到处都有console.log。将它们全部删除并不好,因为我可能会再次需要它们。有没有办法为整个react应用程序做这样的事情?
if(env === 'production'){
console.log= function(){}
}
鉴于您正在使用 React,很可能您已经将 babel 作为构建过程的一部分。
你可以使用这个babel 插件在构建阶段删除所有的 console.* 函数调用。
在您的index.js
文件中,检查您是在开发模式还是生产模式下运行。
如果您处于生产模式,请禁用 console.log。
if (process.env.NODE_ENV !== "development")
console.log = () => {};
更安全的方法是不使用console.log
并使用自定义记录器实现,您可以在需要时将其关闭。
为了让你开始做一些事情,你可以使用优秀的debug npm 包,它可以轻松地全局或选择性地关闭,并且它可以在 nodejs 服务器端和客户端上运行。
export function consoleLog() {
const args = [...arguments];
for (let i = 0; i < args.length; i++) {
console.log(args[i]);
}
}
将此文件保存在某处,然后在所有文件中搜索 console.log 并替换为 consoleLog 并确保将其导入到要使用它的每个文件的顶部。
当您构建生产包时,您可以简单地将其更改为...
export function consoleLog() {
// const args = [...arguments];
// for (let i = 0; i < args.length; i++) {
// console.log(args[i]);
// }
}