编写 Firefox WebExtensions 时出现不适当的 WebStorm 警告

Undue WebStorm warnings when coding Firefox WebExtensions

我正在制作 Firefox WebExtension。因此,我使用了相关的 API,WebStorm 似乎不知道它,因此出现了很多警告。

例如,在下面的片段中

        //make the panel a drop zone
        panel.ondragover = function (τ) {
            τ.preventDefault();
            τ.dataTransfer.dropEffect = "move";
        };
        panel.ondrop     = function (τ) {
            τ.preventDefault();
            τ.stopPropagation();
            var skware        = document.getElementById(
                τ.dataTransfer.getData('text'));
            skware.style.top  = (τ.clientY - skware.mouseOffset.y) + 'px';
            skware.style.left = (τ.clientX - skware.mouseOffset.x ) + 'px';
            put('skwarePos',
                skware.id,
                {'top': skware.style.top, 'left': skware.style.left}
            );

.dataTransfer 这样的事情会被标记为 未解决的变量

没什么大不了的,但是,肯定有一种方法可以告诉 WebStrom 我正在使用 Firefox WebExtension JavaScript APIs,因此这个变量是合法的。

我发现 a similar question 关于 Chrome 上的扩展,并且确实找到了一个名为 firefox-Definitely typed 的库,但波浪线仍然存在。

您需要安装的不是 firefox 类型定义,而是 firefox-webext-browser,与您提到的 issue for chrome 中概述的方式相同