我正在制作一个 Firefox WebExtension。因此,我使用了相关的 API,而 WebStorm 似乎并不知道这些 API,因此出现了很多警告。
\n\n例如,在下面的代码片段中
\n\n //make the panel a drop zone\n panel.ondragover = function (\xcf\x84) {\n \xcf\x84.preventDefault();\n \xcf\x84.dataTransfer.dropEffect = "move";\n };\n panel.ondrop = function (\xcf\x84) {\n \xcf\x84.preventDefault();\n \xcf\x84.stopPropagation();\n var skware = document.getElementById(\n \xcf\x84.dataTransfer.getData(\'text\'));\n skware.style.top = (\xcf\x84.clientY - skware.mouseOffset.y) + \'px\';\n skware.style.left = (\xcf\x84.clientX - skware.mouseOffset.x ) + \'px\';\n put(\'skwarePos\',\n skware.id,\n {\'top\': skware.style.top, \'left\': skware.style.left}\n );\n
Run Code Online (Sandbox Code Playgroud)\n\n诸如此类的事情.dataTransfer
将被标记为“未解决的变量”。
没什么大不了的,但是,肯定有一种方法可以告诉 WebStrom 我正在使用Firefox WebExtension JavaScript API,因此这个变量是合法的。
\n\n我发现了一个关于 Chrome 扩展的类似问题,并且确实找到了一个名为 …
我制作了一个小型 Chrome 扩展程序,可以打开一个新选项卡并在其中显示您的书签。
我希望自动固定这个新标签。代码是这样的:
chrome.tabs.create({
"url": chrome.extension.getURL("skwares.html")
},
function(tab) {
tab.highlighted = true;
tab.active = true;
tab.pinned = true;
});
Run Code Online (Sandbox Code Playgroud)
新选项卡可以正常打开,但未固定。我错过了什么?
我对 [K&R88] 深陷其中,并且受到责备,因为 K&R 用作示例和练习材料的gcc
函数现已存在(据我所知,从 2010 年左右就开始存在)。getline()
stdio.h
有什么办法可以告诉编译器像 1988 年一样播放它,并让我的朴素版本取代库中的版本吗?
\n(是的,这是徒劳的,但填充 [K&R88] 是我的新爱好;-)
\n强制编译器输出:
\ngcc -g -Wall -o "pgm" "pgm.c" (in directory: /home/eric/Development/6.087)\npgm.c:9:7: error: conflicting types for \xe2\x80\x98getline\xe2\x80\x99\n 9 | char *getline(){\n | ^~~~~~~\nIn file included from pgm.c:1:\n/usr/include/stdio.h:616:18: note: previous declaration of \xe2\x80\x98getline\xe2\x80\x99 was here\n 616 | extern __ssize_t getline (char **__restrict __lineptr,\n | ^~~~~~~\nCompilation failed.\n
Run Code Online (Sandbox Code Playgroud)\n