0

什么是最好的方法/如何让 Eclipse 在大型 javascript 应用程序中提供内容辅助/完成。

我们正在开发一个在前端使用 HTML/javascript 的大型应用程序。我们希望避免使用大量函数使 javascript 环境变得混乱,因此希望为我们的应用程序构建一个命名空间,我们将其称为 app。

为了扩展我们的命名空间,我们希望能够调用 app.namespace("package").function = function(){...}

namespace("package") 如果包退出则解析包,否则创建它。

手头的问题是,这种方法可以帮助我们保持环境清洁,但会使内容辅助更难(或不可能?)

关于如何让这种方法在 eclipse 中使用代码完成和内容辅助的任何想法?周围是否有任何其他 IDE 可以使这成为可能?

4

1 回答 1

0

我为这个问题找到了几个解决方案,它们都没有完全满足我的需求,但每个都有自己的优势。我查看了Aptana 插件Visual Web Developer 2010 ExpressWebStorm

对于 Eclipse,我最终选择了 Aptana。这个插件比标准的 eclips JavaScript 透视图有更强的代码完成支持。为了使我们的解决方案有效,我们必须创建“接口”,将可用的内容与我们的实际代码一起发布。我们将这些接口放在映射到我们实际代码的文件结构中,并在构建应用程序时将其省略。

要使 Aptana 插件正常工作,您需要对设置进行一些更改。在“属性”下,您需要将“项目性质”设置为“Web”。其次,您需要编辑“首选项/常规/编辑器/文件关联”,确保将“JavaScript 源代码编辑器”设置为默认值,而不是标准的“JavaScript 编辑器”。一旦你重新打开你的 javascript 源文件,你应该准备好了:)

视觉 Web 开发者 2010 速成版

实际上这对于js开发来说是相当不错的。不利的一面是安装它会在你的机器上安装很多你不需要的垃圾,而且它需要很长时间并且需要 5 次(5 次!)重新启动才能安装。但是一旦你准备好了,它实际上是在你键入时伪运行你的代码。实际上,所有动态生成的对象都可以通过智能感知提供给您,为您提供类型特定的帮助(字符串、数字、对象等)。为了实现这一目标(我认为我以前从未将这个词与 Microsoft 产品一起使用过)交叉文件引用中的行为,您需要在文件顶部应用一些魔法。

/// <reference path="path to another js source file you want intellisense for">

网络风暴

我没有像其他两个那样深入研究这个解决方案,因为我们需要这个产品的商业许可证(非商业用途的免费许可证可用)。看起来您在此 IDE 中也获得了许多可用于可视化 Web 开发人员的功能。事实上,我认为这个 IDE 在 Code Completion 和 Code Assist 三者中为您提供了最多的点击率。我实际上认为你在代码完成下获得了太多的点击,至少我得到了超出范围的点击,因此更难实际使用。希望可以调整此行为,以便您从 IDE 获得更准确的支持,但我没有时间进一步调查。

我们的结论

就我们而言,我们可能会选择适用于 eclipse 或 Visual Studio 的 Aptana 插件。Eclipse 是我们的默认 IDE,我们的组织在我们批准的开发工具系列中拥有 Visual Studio,但如果我们事先没有任何已经在使用的首选选择,我会进一步检查 WebStorm。

于 2012-09-14T07:16:58.483 回答