【问题标题】:Eclipse HTML5 Project - JavaScript Code Assist Only Works In Certain CasesEclipse HTML5 项目 - JavaScript 代码辅助仅在某些情况下有效
【发布时间】:2025-12-22 15:50:16
【问题描述】:

我正在使用 Eclipse Juno 开发一个静态 Web 项目。我的项目使用了几个不同的 JavaScript 文件。其中一个文件包含一个函数:

function IconData(size, url) {
    this.size = size;
    this.url = url;
}

我有另一个函数返回 IconData 类型的对象:

function PageInfo() {
    this.iconData = function() {
        var iconData = new IconData();
        iconData.size = 10;
        iconData.url = "http://somepage.com/image.png";
        return iconData;
    }
}

在另一个 JavaScript 文件中,我创建了一个 PageInfo 实例并调用函数 iconData:

var page = new PageInfo();
// populate stuff
var icon = page.iconData();

如果我输入图标。然后 CTRL+SPACE 启动代码辅助我在 Eclipse 中弹出以下消息:

无默认提案

没有模板提案

但是,如果我创建一个新的图标数据实例,例如:

var iconData = new IconData();

然后我输入 iconData。然后 CTRL-SPACE 会弹出代码辅助并向我展示所有可能性:

我的问题是,为什么代码辅助在第一种情况下不起作用,但在第二种情况下起作用?

谢谢。

附:我有 Google 如何在 Eclipse 中为 JavaScript 启用代码辅助我发现几个网站说我需要确保我安装了 JavaScript 开发工具,并且我确保我已经安装了它们,所以我知道这不是问题。

【问题讨论】:

    标签: javascript eclipse code-assist web-project


    【解决方案1】:

    我认为这是 JSDT 的限制。我建议你安装 tern.java 扩展 JSDT 以改进 JS 完成、超链接、悬停。

    将你的JS文件复制到一个文件夹中,将你的项目转换为tern并用你的文件夹配置脚本路径。请阅读Getting Started 了解如何操作。

    这里是你案例的截图(这里 scripts 文件夹被配置为脚本路径):

    请注意 tern.java 是用 Eclipse Luna 开发的,所以我建议你使用这个版本而不是 Juno。

    【讨论】:

      最近更新 更多