首页 > 解决方案 > 如何避免打字稿将 unicode 字符转换为 ascii?

问题描述

例如:

const program = ts.createSourceFile('temp.ts', 'console.log("")', ts.ScriptTarget.ESNext);
console.log(ts.createPrinter().printFile(program));

它的输出是这样的:

console.log("\uD83D\uDE02");

我希望它像这样打印原始的 unicode 源代码:

console.log("")

标签: typescript

解决方案


遇到同样的问题。我们的解决方法:

    let content = printer.printFile(file);
    content = unescape(content.replace(/\\u/g, "%u"));

推荐阅读