重新创建控制台

时间:2018-09-02 16:58:23

标签: javascript ecmascript-6

我想创建一个修改后的控制台,该控制台具有与真实控制台en js相同的功能:

这是我想做的事情:

export function consoleX (tag, msg){

    if (process.env.REACT_APP_PROFILE === "dev") {
        return console(tag, msg);
    } else {
        return null;
    }
}

我希望能够使用consoleX.log,consoleX.error等

我的函数如下:

consoleX.log("Hi", "Hello")

但是这不起作用,因为console(tag,msg)返回了exeption。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

您要尝试这个吗?您需要根据需求/文件进行更改,但消耗量保持不变。

consoleX.log("Hi", "Hello")

var consoleHolder = console;
var consoleX = {}
if(process.env.REACT_APP_PROFILE !== "dev"){
    Object.keys(consoleHolder).forEach(function(key){
        consoleX[key] = function(){};
    })
}else{
    consoleX = consoleHolder;
}

答案 1 :(得分:0)

在我尝试过的评论中的建议之后

    export const consoleX = process.env.REACT_APP_PROFILE === "dev" ? console : { 
    log: () => {},
    warn: () => {},
    info: () => {},
    error: () => {},
};

现在一切正常。

相关问题