0

我正在使用 gulp 并且我想使用 babeljs 任务保存我的 .js 文件的格式,我该如何执行此操作?

例如我有:

var
  PC1   = 'Customer',
  PC2   = 'Purchase Frequency',
  PC3   = 'Purchase Value',
  PC4   = 'Most Viewed Category',
  PC5   = 'Brand',
  PC6   = 'Reduced Price',
  PC7   = 'Colour',
  PC8   = 'Material',
  PC9   = 'Gender',
  PC10  = 'Size',
  PC11  = 'Price';

它将它表示为:

var PC1 = "Customer",
    PC2 = "Purchase Frequency",
    PC3 = "Purchase Value",
    PC4 = "Most Viewed Category",
    PC5 = "Brand",
    PC6 = "Reduced Price",
    PC7 = "Colour",
    PC8 = "Material",
    PC9 = "Gender",
    PC10 = "Size",
    PC11 = "Price";

如何避免这种情况?

4

1 回答 1

0

Babel 尝试保留您的一些格式(缩进、双引号或单引号),但由于 Babel 从 AST 生成结果代码的性质,它无法保留您想要的内容:在生成阶段,它不知道什么输入看起来像。

Babel 的生成器只知道你代码的语义。由于保留了语义,这在 Babel 方面并不容易修复,我不认为修复此问题是 Babel 的目标之一。

此外,虽然 Babel 尝试生成好看的代码,但您通常不应该查看它生成的输出(除非可能是调试)。

如果您使用source-maps可能会对您有所帮助,您应该看到浏览器(如果在浏览器中)向您显示结果代码,就好像它是输入一样,便于调试,并且 Node 可以在使用source-map-supportpackage on时对堆栈跟踪执行相同的操作新PM。

于 2015-08-05T13:22:34.600 回答