html 文件中的脚本标记中的 VSCode 中缺少建议

Posted

技术标签:

【中文标题】html 文件中的脚本标记中的 VSCode 中缺少建议【英文标题】:Missing suggestion in VSCode in a script tag within an html file 【发布时间】:2021-12-06 01:41:31 【问题描述】:

当在html 文件中的<script> 标记中使用vscode for javascript 中的.style 方法时,我没有为某些属性获得任何代码完成。我正在输入b.style,但 vscode 没有显示任何建议。我不知道为什么会这样。

<body>
  <div class="body">
    asdasdasdasd
  </div>

  <script>

    let b = document.querySelector('.body');
    b.style   // <- no intellisense here for 'style'

  </script>

<body>

【问题讨论】:

您必须安装智能感知插件。 VSCode 自己做不了。 我有。还是不行…… 好的,它在 html 文件中不起作用,但是这个智能感知在哪个文件中起作用? 【参考方案1】:

问题是你有一个Element

Document 方法 querySelector() 返回第一个 Element

来自MDN doc on querySelector

Elements 没有style 作为属性。

HTMLDivElements 确实有一个 style 属性,所以你需要告诉 vscode 这就是你所拥有的。有两种方法可以做到这一点:

/** @type HTMLDivElement */        
let b =  document.querySelector('.body');

let b = /** @type HTMLDivElement */ (document.querySelector('.body'));

// note the cast parentheses in the second version

如果你做其中任何一个,你都会得到你想要的智能感知。

【讨论】:

有什么东西可以用于 .js 文件中的所有元素吗??

以上是关于html 文件中的脚本标记中的 VSCode 中缺少建议的主要内容,如果未能解决你的问题,请参考以下文章

vscode运行命令是报错:标记“&&”不是此版本中的有效语句分隔符。

vscode怎么运行代码 怎么操作

vscode怎么运行代码

VScode 标记“&&”不是此版本中的有效语句分隔符。

PHP基础

</script> 用引号括住 html 中的脚本标记