Javascript 淘汰版js intellisense(自动建议)不适用于Webstorm和Visual Studio
我在我的简单应用程序中使用knockoutjs击倒js在我的应用程序中运行良好。我的问题是为什么Javascript 淘汰版js intellisense(自动建议)不适用于Webstorm和Visual Studio,javascript,visual-studio,knockout.js,webstorm,jetbrains-ide,Javascript,Visual Studio,Knockout.js,Webstorm,Jetbrains Ide,我在我的简单应用程序中使用knockoutjs击倒js在我的应用程序中运行良好。我的问题是为什么VS2013或WebStorm没有显示任何击倒的智能感知?它还显示了jQuery的智能感知 目前我的代码是: <!DOCTYPE html> <html> <head> <title></title> <script src="Scripts/jquery-1.9.0.js"></script>
VS2013
或WebStorm
没有显示任何击倒的智能感知?它还显示了jQuery
的智能感知
目前我的代码是:
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="Scripts/jquery-1.9.0.js"></script>
<script type="text/javascript" src="Scripts/knockout-3.0.0.js"></script>
<script type="text/javascript">
$(function() {
$("#jqueryTestId").html("Hello world, From jquery.");
});
</script>
</head>
<body>
<div>
name: <input type="text" data-bind="value: name"/> <br/>
You've clicked <span data-bind="text: numberOfClicks"></span> times
<button data-bind="click: incrementClickCounter">Click me</button>
</div>
<div id="jqueryTestId">
</div>
<script type="text/javascript">
var viewModel = {
numberOfClicks : ko.observable(0),
name : ko.observable(""),
incrementClickCounter : function() {
var previousCount = this.numberOfClicks();
alert(this.name("TestName"));
this.numberOfClicks(previousCount + 1);
}
};
ko.applyBindings(viewModel);
</script>
</body>
</html>
如何启用intellisense?使用knockout.d.ts在Settings/libraries/javascript中配置为javascript库,正如@RP Niemeyer所建议的,是WebStorm的最佳解决方案。使用minified knockout-3.0.0.js作为库目前不起作用-请参见您只需使用我使用过的KnockoutJS调试版本,它自动完成得非常好:
<script type="text/javascript" src="js/knockout-3.2.0.debug.js"/>
希望这能解决您的问题:)
这同样适用于“数据绑定”标记:可能与jQuery的@PWKad i test VS重复,但它的intellisense在WebStorm中运行良好,您最好将Knockout配置为如下库:。在Libraries对话框中,单击Download…,然后将下拉列表切换到“TypeScript社区存根”,并选择淘汰的一个。这将给你最好的intellisense。这也解决了RubyMine的intellisense问题。虽然这确实解决了这个问题,但我并不100%满意你在knockout官方网站上看到的注释(请检查粗体部分):也可用:调试构建。注意:这只是为了帮助您了解击倒的工作原理。不要将其用于正常的应用程序开发,因为它会暴露其他不受支持的私有API。如果knockout是以intellisense更容易的方式编写的,或者其他IDE适应knockout声明其代码的方式,那就太好了。我同意你的观点,因为调试脚本也更大,但是如果你只是为了intellisense的自动完成而使用它,我认为从缩小版到调试版来回切换是公平的。我认为可以将调试脚本保留在主源代码目录之外,并且仍然可以获得代码完成的好处。实际上,我并没有在任何脚本标记中使用调试脚本,但Webstorm仍然会选择该库进行索引。
<script type="text/javascript" src="js/knockout-3.2.0.debug.js"/>