Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果我使用ES6,是否需要浏览?_Javascript_Ecmascript 6_Browserify - Fatal编程技术网

Javascript 如果我使用ES6,是否需要浏览?

Javascript 如果我使用ES6,是否需要浏览?,javascript,ecmascript-6,browserify,Javascript,Ecmascript 6,Browserify,我正在用ES6创建一个新项目,并制作一个构建脚本 我想知道当你已经有了ES6导入时,browserify的价值是什么 如果我将我的gulp脚本指向最小化并删除我的“入口”脚本的控制台日志等,我是否需要browserify?(即,我的输入脚本将使用ES6导入来导入使用的任何子js文件。在我的子js文件中,如果他们使用另一个js文件中的内容,他们也将导入该内容,等等)Browserify和Webpack与模块交互,但不是以语法方式。语言或运行时提供了import或require调用,具体取决于您使用

我正在用ES6创建一个新项目,并制作一个构建脚本

我想知道当你已经有了ES6导入时,browserify的价值是什么


如果我将我的gulp脚本指向最小化并删除我的“入口”脚本的控制台日志等,我是否需要browserify?(即,我的输入脚本将使用ES6导入来导入使用的任何子js文件。在我的子js文件中,如果他们使用另一个js文件中的内容,他们也将导入该内容,等等)

Browserify和Webpack与模块交互,但不是以语法方式。语言或运行时提供了
import
require
调用,具体取决于您使用的是ES6还是Node,但绑定器实际上会将这些模块合并到一个文件中

在此过程中,大多数绑定器都会执行一些优化。常见的有:

  • 将ES6转换为旧版本(ES5甚至ES3)
  • 缩小/丑化
  • 包括CSS、图像和其他非脚本数据
ie my entry脚本将使用ES6导入来导入使用的任何子js文件


目前还没有任何JavaScript环境支持ES6模块。因此,您必须将文件转换为您的目标环境使用/支持的模块系统,并/或将其捆绑(例如,使用browserify)。

如果您将导入语句转换为commonjs,则需要传输ES6,然后browserify将为您绑定这些模块。
…但绑定器实际上会将这些模块合并到一个文件中
。。你是说,
import
不会将它们全部放在一个文件中吗?@Chowza it肯定不会<代码>导入将导致运行时加载并执行该文件,然后返回一个引用,但不会对它们进行组合。Webpack(在较小程度上是Browserify)将查找导入,合并所有提到的文件,然后检查未使用的代码并将其删除,优化所有内容,并为用户留下一个较小的文件。@ssube:问题是,没有一个浏览器支持ES6模块,而不是ES6导入。因此,您需要捆绑机。