用于模块和非模块使用的脚本-Javascript

德拉戈96

这是我的问题:我创建了一个在chrome扩展中使用的库。该库导出两个类,其中一个应在后台脚本中导入,一个应在内容脚本中导入。

后台脚本(以及扩展页面中使用的其他脚本)可以处理模块,因此我想使用ES6模块的本机“导入” /“导出”功能。

内容脚本不支持模块。这意味着,如果我在库脚本中使用“ export”关键字,将引发错误,并且我将无法再使用该库。

当前,我根本没有实现模块,并且可以解决问题,但是我想实现此功能,以便可以在有人访问它时使用它。

有没有一种方法可以将我的库功能既作为模块又作为非模块提供给两种脚本?那实际上是我应该做的事情吗?

德拉戈96

最后,我设置了两个git分支:

1-在第一个中,我只是保留了文件中没有“导出”的内容,因此没有ES6模块功能

2-另一个分支,我决定将其设置为在NPM上发布,并在此分支中导出我的课程。如果您使用NPM进行开发,那么很可能还拥有像webpack这样的捆绑器来跟踪模块和依赖项。

每当我进行更改时,我都会在master(没有导出)分支中进行更改,然后将更改合并到npm分支中,以避免两次编写相同的代码

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在类和JavaScript模块中使用反射

javascript模块和CORS

Golang和JavaScript模块

Javascript模块和设计模式

使用AJAX设置和返回变量的JavaScript模块

在Heroku上使用JavaScript模块

使用Vue JavaScript模块导入

使用Javascript中的Typescript模块

在 iOS 中使用 Javascript 模块

使用JavaScript导入节点模块

用于多边形布尔函数(联合,交集,差和XOR)的javascript模块

Javascript 模块加载定义和模块加载器的状态

是否可以混合捆绑的模块和JavaScript模块

<脚本类型=文本/ javaScript>与<脚本类型=模块>

Javascript中的经典脚本v / s模块脚本

如何使用ES模块有效地声明集合和获取用于处理现代JavaScript中cookie的函数?

Javascript模块模式和闭包

Javascript-了解Requirejs模块文字和“ this”

JavaScript中模块和库之间的区别

JavaScript模块-动态导入和副作用

加载模块脚本失败:服务器以非 JavaScript、CSS MIME 类型“text/x-scss”响应

GCP App Engine / Angular-无法加载模块脚本:服务器以非JavaScript MIME类型“ text / html”响应

如何避免将JavaScript ES6模块导出添加到全局范围以用于普通脚本块?

使用单个javascript文件作为具有导出功能的模块或独立脚本

Javascript模块错误SyntaxError:无法在模块外部使用import语句

Javascript模块SyntaxError:无法在模块外部使用import语句

PyQt5 如何使用 JavaScript 模块

捆绑使用“显示模块模式”的javascript

用于 JavaScript 的 SWIG:“模块未自行注册。” 负载