Javascript 如何使用es6模块导入和导出js文件

Javascript 如何使用es6模块导入和导出js文件,javascript,Javascript,我在最基本的层面上使用es6模块功能时遇到了问题 查看MDN文档,我看到了使用该特性的许多变体,但没有一个适合我。考虑下面的片段: //importer.js "use strict"; import * as imported from "./exporter"; imported.foo(); //main.html 我希望下面的代码记录“success”,因此我知道“imported module”管理从“exported module”导入foo函数 我尝试了一些其他的变体,比

我在最基本的层面上使用es6模块功能时遇到了问题

查看MDN文档,我看到了使用该特性的许多变体,但没有一个适合我。考虑下面的片段:


//importer.js
"use strict";

import * as imported from "./exporter";

imported.foo();
//main.html
我希望下面的代码记录“success”,因此我知道“imported module”管理从“exported module”导入foo函数

我尝试了一些其他的变体,比如带括号的导出{},或者使用MDN编写的默认导出

很明显我错过了一些基本的东西。
非常感谢您的帮助。

请在html脚本元素中添加
type=“module”
属性,并在导入程序文件中添加文件扩展名

 import * as imported from "./exporter.js";

CORS是在HTTP上分层的,所以除了HTTP https chrome和chrome扩展之外,处理CORS毫无意义,因为最后3个版本(我这里没有文档)依赖于与HTTP相同的规则

CORS的任何其他协议行为目前尚未定义。所以铬元素会阻止它

要单独回答每个问题,请执行以下操作:

<P>1)不,他们认为,由于CORS不是为其他协议定义的,最安全的是用一个错误说“未实现”< /P>崩溃。 2) 因为1)答案是否定的,所以这个问题不适用。但是,如果Chrome允许这个请求,那么由未知的协议来正确处理CORS,这可能不会正确完成

3) Firefox和Chrome的区别在于Firefox首先检查请求者文档和请求的资源的来源是否相同(如果相同,则允许其通过,否则遵循CORS流程),而Chrome在检查来源匹配之前始终遵循CORS流程

-我不知道哪种行为最符合Fetch规范,因为规范的一部分说,这两种行为似乎都可以

文件“ftp”

现在,尽管很不幸,文件和ftp URL还是留给读者作为练习

如果有疑问,请返回网络错误


我能看到的唯一危害是Firefox会让一个脚本在屏幕上显示文件:///中的敏感信息,而肩上的间谍可以抓取这些信息。它与CORS无关。

你忘了
type=“module”
@而且几乎所有在过去几年中创建的现代浏览器都支持ES6。(毕竟,ES6是ES2015)
function()=>console.log('success')无效语法。已编辑。谢谢还是一样的问题…完成了。现在我被CORS策略阻止了:从源代码“null”访问位于[…]的脚本已被CORS策略阻止:跨源请求仅支持协议方案:http、数据、chrome、chrome扩展、,https.您是否在脚本标记中添加了这两个文件?您还需要在脚本标记中添加
exporter.js
文件。@TamirNakar请在本地服务器或任何域中运行脚本,它不是HTML文件。而且您不需要为exporter.js文件添加
标记。@kousheralampranto也为
exporter.js
添加了它。相同的结果。@TamirNakar服务器未来需要的不是HTML文件。
 import * as imported from "./exporter.js";