2012-04-16 69 views
8

在JavaScript上下文中查看异步模块定义(AMD)之后,我想知道如何在Visual Studio 2010中获取依赖模块的intellisense。Javascript AMD模块:如何获取跨模块的Visual Studio intellisense

例如,给定模块A:

define(function() { 
    return { 
     square: function(value) { 
      return value * value; 
     } 
    }; 
}); 

和相应的模块B:

define(["A"], function(a) { 
    return { 
     value: a.square(10) 
    } 
}); 

然后我想具有用于模块完整的智能感知(表示为参数)模块内B.请注意,这两个模块将在单独的文件中定义(在这种情况下为A.js和B.js)。

+0

我发布了一个类似问题的视觉工作室的错误:https://connect.microsoft.com/VisualStudio/feedback/details/2825862(它并没有解释我登录时,虽然我发布)。如果类似条件解决了您的问题,请对该问题发表评论。 – beruic 2016-06-17 08:47:36

回答

2

它看起来像RequireJS笔者正在研究智能感知支持位置: https://github.com/jrburke/requirejs-intellisense

不幸的是我还没有得到“神奇”来工作还没有。

更新:我确实得到这个在某些情况下工作。特别是当所有的js文件都在同一个文件夹中时,它效果很好。

+0

你是怎么做到的? – Charles 2012-04-20 04:37:38

+0

我将所有的javascript文件放在同一个文件夹中,并且“引用”了require.js(将文件拖到编辑器中以获取参考评论)。我发现通常需要几秒钟才能开始工作。我确实得到它为其他文件夹结构工作,但它似乎相当有限。此外,我认为它只适用于需求调用(未定义)。 – dcstraw 2012-04-23 16:47:12

+0

我得到了define和require函数(即'require'在默认模块定义中的intellisense中显示)。然而,我无法获得针对测试或个人的智能感知,即'测试'。没有列出numberProperty和childObject。这就是我所说的“完整”intellisense。 – Charles 2012-05-19 07:58:48

5

这一评论在这里帮助我得到它的工作部分:Comment on GitHub Repo

基本上,我必须确保这一点:

/// <reference path="require.js" /> 

是在_references.js文件的顶部。它在'require'和'define'块中工作,但似乎不能在'define'块内的匿名函数中工作。