1

因为我喜欢在 javascript 中编写代码,就像在其他 OOP 环境中一样,所以我喜欢模块化我的代码,比如为我的 JS 应用程序创建一个顶级命名空间,如下所示:

var myapp = {};
myapp.module = {
 member_function: function(param) {
 ...
 },...
};

这使我的代码布局很容易遵循,并且由于这些不是插件,也不是要实例化的“类”,因此这种格式简单明了。

然而,由于 Eclipse 的 jsdt 大纲生成器默认只深一层,大纲只显示顶级模块,不显示成员函数、属性等。我知道这是为了防止循环引用等,但不是太在开发过程中很有帮助。

我实际上为我的代码积极创建了 jsdoc 片段,即使 eclipse 本身不使用它并且不显示在线文档或提供基于 @returns 类型的提示。我只是不断添加文档来帮助我记住什么是什么,参数是什么等等。:) 当然,希望有一天 eclipse jsdt 会利用这些东西。

然而,现在,我刚刚发现了奇妙的@memberOf 事情。突然之间,我的模块可以在大纲视图中探索。耶……呃……

突然之间,代码提案也停止在模块上工作。提案与 myapp 一样长。,这将显示 .module,但在 myapp.module. 之后,没有给出任何建议。如果我删除 @memberOf,代码建议将再次适用于该模块,但该模块的大纲不再可探索。

任何人都知道大纲资源管理器和代码提案在 jsdt 中的工作方式吗?(不要说 netbeans,这对于 js 和 html 来说非常棒,但对于 php 来说非常跳跃,不支持 yaml 等等。我需要我的 eclipse,唉。)

4

1 回答 1

0

免责声明,我是tern.java的作者。

我建议您安装 tern.java 1.2.0-SNAPSHOT,您将受益于 tern outline 和 JS 补全:

在此处输入图像描述

于 2015-12-11T14:20:41.577 回答