当前位置: 首页 > 面试题库 >

JavaScript Babel文件被复制而不进行转换

印子平
2023-03-14
问题内容

我有以下代码:

"use strict";

import browserSync from "browser-sync";
import httpProxy from "http-proxy";

let proxy = httpProxy.createProxyServer({});

并且我已经通过npm 安装babel-corebabel-cli在全球范围内使用。关键是当我尝试在终端上使用此代码进行编译时:

babel proxy.js --out-file proxified.js

输出文件被复制而不是编译(我的意思是,它与源文件相同)。

我在这里想念什么?


问题答案:

Babel是一个转换框架。在6.x之前的版本中,默认情况下启用了某些转换,但是随着本机支持许多ES6功能的Node版本的使用量增加,可配置性变得更加重要。默认情况下,Babel
6.x不执行任何转换。您需要告诉它要运行哪些转换:

npm install babel-preset-env

并运行

babel --presets env proxy.js --out-file proxified.js

或创建一个.babelrc包含

{
    "presets": [
        "env"
    ]
}

并像以前一样运行它。

env在这种情况下,是一个预设,该预设基本上说是将所有标准ES *行为编译为ES5。如果您使用的是支持某些ES6的Node版本,则可能需要考虑

{
    "presets": [
        ["env", { "targets": { "node": "true" } }],
    ]
}

告诉预设只处理您的Node版本不支持的事情。如果需要浏览器支持,也可以在目标中包括浏览器版本。



 类似资料:
  • 我最近通过以下博客在Ubuntu 14.04上配置了php7http://www.zimuel.it/install-php-7我根据博客成功安装了它。但是当尝试运行php文件(/var/www/test.php)时,它会被下载而不是执行。我不知道我错过了什么配置。当我在浏览器中输入localhost时,它的响应是“Itworks”。

  • 问题内容: 有多个SO问题解决了该主题的某种形式,但它们似乎都无法从csv文件中仅删除一行(通常涉及复制整个文件),效率非常低下。如果我的csv格式如下: 删除Sarah的行的最有效方法是什么?如果可能,我要避免复制整个文件。 问题答案: 您这里有一个基本问题。当前的文件系统(据我所知)没有提供一种从文件中间删除一堆字节的功能。您可以覆盖现有字节,或写入新文件。因此,您的选择是: 创建该文件的副本

  • 二进制文件和行结束标记转换 在大多数情况下,Subversion比CVS更好的处理二进制文件,因为CVS使用RCS,它只可以存储二进制文件的完整拷贝,但是,Subversion使用二进制区别算法来表示文件的区别,而不管文件是文本文件还是二进制文件。这意味着所有的文件是以微分的(压缩的)形式存放在版本库。 CVS用户需要使用-kb选项来标记二进制文件,防止数据的混淆(因为关键字解释和行结束转化),他

  • 问题内容: 我想做一个默认情况下django不允许的操作。 我正在编写命令(通过运行),以便在Django的我自己编写的文件存储中将给定的目录结构导入真实文件系统中。 我认为,这是我的相关代码: 回溯是: 该完整的模型可以在GitHub上找到。在目前完整的命令是gist.github.com可用。 如果你不想检查模型,则该类的属性为FileField。 我想会发生此问题,因为我只是“链接”到找到的

  • 问题内容: 如何将文件转换为二进制文件?我的项目只需要它。我需要通过二进制文件加密文件。 问题答案: 如果您要访问ACTUAL BINARY形式,则读入文件并将每个字节转换为二进制表示形式… 编辑: 以下是一些代码,可将字节转换为带有位的字符串: 如果要访问文件中的字节,则只需使用以下代码(在第一种情况下也可以使用此代码): 要使用这两段代码,您现在可以遍历每个字节并使用以下位创建一个String

  • 我想知道如何使用JCIFS在SMB共享中将文件从一个文件夹移动到另一个文件夹。 首先,没有任何方法。 然后,这种方法: 引发异常,