webpack:Tether 未定义
webpack: Tether is not defined
我正在创建一个 WebExtension,我需要在我的 content.js 中使用 selection-menu 库。它具有系绳依赖性,所以我安装了:
npm install tether
npm install selection-menu
然后在我的代码中写:
import * as Tether from 'tether'
import SelectionMenu from 'selection-menu'
...
this.selection_menu = new SelectionMenu({
container: document.body,
content: '<button> click me </button>',
onselect: function(e) {
this.menu.innerHTML = 'Selection length: ' + this.selectedText.length;
}
});
但是当我 select 发短信时,我得到一个错误:
VM1492:23 Uncaught ReferenceError: Tether is not defined
at i.show (<anonymous>:23:2899)
at <anonymous>:23:4192
但在页面代码中我看到 tether 是导入的
如何解决这个错误?
这对我有用:
在我的 webpack.config.js:
config.plugins = (config.plugins || []).concat([
...
new webpack.ProvidePlugin({
tether: 'tether',
Tether: 'tether',
'window.Tether': 'tether',
})
]);
我正在创建一个 WebExtension,我需要在我的 content.js 中使用 selection-menu 库。它具有系绳依赖性,所以我安装了:
npm install tether
npm install selection-menu
然后在我的代码中写:
import * as Tether from 'tether'
import SelectionMenu from 'selection-menu'
...
this.selection_menu = new SelectionMenu({
container: document.body,
content: '<button> click me </button>',
onselect: function(e) {
this.menu.innerHTML = 'Selection length: ' + this.selectedText.length;
}
});
但是当我 select 发短信时,我得到一个错误:
VM1492:23 Uncaught ReferenceError: Tether is not defined
at i.show (<anonymous>:23:2899)
at <anonymous>:23:4192
但在页面代码中我看到 tether 是导入的
如何解决这个错误?
这对我有用:
在我的 webpack.config.js:
config.plugins = (config.plugins || []).concat([
...
new webpack.ProvidePlugin({
tether: 'tether',
Tether: 'tether',
'window.Tether': 'tether',
})
]);