我正在page/router component使用 Angular 7 及其 CLI 在网站上开发一个小程序。有一次我需要检查用户是否允许 flash,我这样做:
checkFlash() {
var hasFlash = false;
try {
hasFlash = Boolean(new ActiveXObject("ShockwaveFlash.ShockwaveFlash"));
} catch (exception) {
hasFlash = "undefined" != typeof navigator.mimeTypes["application/x-shockwave-flash"];
}
return hasFlash;
}
Run Code Online (Sandbox Code Playgroud)
我在这里找到了这个,它工作得很好,但是现在当我清理我的应用程序时,我注意到 Angular 似乎不喜欢这个,事实上,它说它ActiveXObject没有定义,但它仍然有效。
超级纠结...
我试图连接一个实际的闪光物体,像这样$('embed[type="application/x-shockwave-flash"]')或$('embed[type="application/x-shockwave-flash"]')[0]但没有运气,它总是返回真。
我尝试安装额外的npm(s),包括像activex-support和activex-data-support他们的@types表兄弟一样的。在设置它们之后,我发现它们对我的案子没有任何帮助。
以下是
CLI&VScode-Intellisense给我的确切错误:
[ts] 'ActiveXObject' only refers to a type, but is being used as a value …