gpt4 book ai didi

javascript - 如何从 Closure Compiler 编译的模块中导出符号?

转载 作者:行者123 更新时间:2023-11-30 21:09:43 25 4
gpt4 key购买 nike

我在一个库文件中有许多由闭包编译器(高级)编译的 js es6 模块。

我无法使用 /** @export */ 或使用 goog.exportSymbol('whatever', whatever) 导出一些符号到 HTML 页面中未编译的 javascript。

怎么做?

备注:如果我用 goog.require/goog.provide 替换 es6 import/export所有模块,它都有效,我可以在 HTML 页面中成功使用这些符号。

最佳答案

经过进一步调查,我找到了解决方案。

虽然在浏览器中加载时在控制台中没有任何错误(当然除了 undefined whatever),但我的库没有被执行。我只是将闭包库移动到要编译的文件堆栈之前,然后浏览器正确执行我的库并正确导出我的符号。

导出符号的 3 种方法在编译的 es6 模块中有效:/** @export */whatever, goog.exportSymbol('whatever', whatever), window['whatever'] = whatever。前两个是第三个的便捷方式。

有关堡垒的更多详细信息,请参阅 No exported symbols with es6 modules library compiled by Closure Compiler

关于javascript - 如何从 Closure Compiler 编译的模块中导出符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46275830/

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