这就是我的问题:我创建了一个在Chrome扩展中使用的库。这个库导出了两个类,其中一个应该导入到后台脚本中,另一个导入到内容脚本中。
后台脚本(以及扩展页面中使用的其他脚本)可以处理模块,所以我想使用ES6模块的原生“导入”/“导出”特性。
内容脚本不支持模块。这意味着如果我在我的库脚本中使用"export“关键字,将抛出一个错误,并且我将不能再使用该库。
目前,我根本没有实现模块,这解决了问题,但我想实现这个功能,以便当有人访问它时可以使用它。
有没有办法将我的库功能同时作为模块和非模块提供给这两种脚本?这真的是我应该做的事情吗?
发布于 2020-09-12 21:50:18
最后,我设置了两个git分支:
1-在第一个示例中,我只保留了没有“导出”的文件,所以没有ES6模块功能
2-另一个分支,我决定将其发布到NPM上,在这个分支中,我导出了我的类。如果您使用NPM进行开发,那么您很可能也有一个像webpack这样的捆绑器来跟踪模块和依赖项。
无论何时进行更改,我都会在master (不导出)分支中进行更改,然后在npm分支中合并更改,以避免重复编写相同的代码
https://stackoverflow.com/questions/63809944
复制相似问题