gpt4 book ai didi

ecmascript-6 - babel 仅在单引号而不是双引号中转换 es6 模板字符串

转载 作者:行者123 更新时间:2023-12-05 05:23:57 24 4
gpt4 key购买 nike

我的脚本代码遵循 jshint 风格,它只允许单引号中的 javascript 字符串。但是当我使用 babel 翻译我的 ES6 模板文件时,它有时会生成带有双引号的字符串,我该如何禁止呢?

例如:模板生成如下代码:
throw new TypeError("Cannot call a class as a function");
我希望生成:
throw new TypeError('不能将类作为函数调用');

最佳答案

Babel-generator 包接受 quotes 选项。现在好像坏了:https://github.com/babel/babel/pull/3367但是,在这个问题被修复之后,您可以手动使用 babel-generator 来根据您的代码风格生成代码:

var core = require('babel-core');
var generate = require('babel-generator');

var ast = core.transformFileSync('test.js', {
// here should be your babel configuration
presets: ['es2015']
}).ast;
console.log(generate.default(ast, {quotes: 'double'}).code);

您不能使用 CLI 执行此操作,因为它不接受此选项作为参数。

附言对生成的代码使用 jshint 或其他代码风格检查器并不好。生成的代码不供人们阅读,只应向开发人员显示 ES6 源代码并允许编辑。

关于ecmascript-6 - babel 仅在单引号而不是双引号中转换 es6 模板字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36441006/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com