Knockout js intellisense(autosuggest)不适用于Webstorm和Visual Studio

Sey*_*avi 7 javascript jetbrains-ide visual-studio webstorm knockout.js

我在我的简单应用程序中使用knockout js.knockout js在我的应用程序中运行正常.我的问题是为什么VS 2013WebStorm不显示任何关于淘汰赛的智能感知?它也显示了intellisense 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>
Run Code Online (Sandbox Code Playgroud)

在WebStorm中,它不显示任何智能感知.但在VS 2013中它只显示ko在建议列表中,但不显示如下observable功能:

ko.observable();
Run Code Online (Sandbox Code Playgroud)

如何启用intellisense?

Eef*_*ret 6

您只需使用我所做的KnockoutJS的调试版本,它就会自动完成:

<script type="text/javascript" src="js/knockout-3.2.0.debug.js"/>
Run Code Online (Sandbox Code Playgroud)

淘汰调试版

希望这能解决你的问题:)

这也适用于"数据绑定"标签:链接


len*_*ena 1

正如 @RP Niemeyer 所建议的那样,使用在 Settings/libraries/javaScript 中配置为 javascript 库的 knockout.d.ts 是 WebStorm 的最佳解决方案。使用缩小的knockout-3.0.0.js作为库当前不起作用 - 请参阅WEB-10723