这是我的问题:我创建了一个在chrome扩展中使用的库。该库导出两个类,其中一个应在后台脚本中导入,一个应在内容脚本中导入。
后台脚本(以及扩展页面中使用的其他脚本)可以处理模块,因此我想使用ES6模块的本机“导入” /“导出”功能。
内容脚本不支持模块。这意味着,如果我在库脚本中使用“ export”关键字,将引发错误,并且我将无法再使用该库。
当前,我根本没有实现模块,并且可以解决问题,但是我想实现此功能,以便可以在有人访问它时使用它。
有没有一种方法可以将我的库功能既作为模块又作为非模块提供给两种脚本?那实际上是我应该做的事情吗?
最后,我设置了两个git分支:
1-在第一个中,我只是保留了文件中没有“导出”的内容,因此没有ES6模块功能
2-另一个分支,我决定将其设置为在NPM上发布,并在此分支中导出我的课程。如果您使用NPM进行开发,那么很可能还拥有像webpack这样的捆绑器来跟踪模块和依赖项。
每当我进行更改时,我都会在master(没有导出)分支中进行更改,然后将更改合并到npm分支中,以避免两次编写相同的代码
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句