0

在我在 emacs 中设置的 tern 中,M-.当我的光标位于fooof obj.foo()(在最后一行)下方时,此代码可以正常工作:

var obj = {};
obj.foo = function() {
    return true;
};

obj.foo();

但是当我在下面做同样的事情时,它会说“没有找到定义”。

window.obj = {};
obj.foo = function() {
    return true;
};

obj.foo();

我尝试将每个引用都obj称为 as window.obj。似乎没有帮助。我错过了什么吗?

4

2 回答 2

1

看来您的问题是您没有使用定义窗口对象的浏览器JSON 类型定义。您的.tern-project应该如下所示:

{"libs":["ecma5","browser"]}

我试过没有浏览器,我和你有同样的问题。如果我声明browser,它会很好用。

于 2015-06-04T07:49:31.683 回答
0

我假设您是在说不起作用的是将光标window.obj放在M-.. 要找到相应的定义,M-.需要在TAGS文件中对其进行索引。如果还没有这样做,那么你就不走运了:它不会被识别。

请参阅 Emacs 手册,nodeTags及其子项,尤其是 node Create Tags Table

于 2015-04-04T22:04:14.080 回答