【问题标题】:tern.js not loading three.js plugintern.js 没有加载 three.js 插件
【发布时间】:2017-08-04 05:17:32
【问题描述】:

问题

我目前正在尝试基于three.js 构建一个 3D 网络应用程序。

我使用neovim 作为我的开发环境,YouCompleteMe 作为完成系统。

我安装了tern来完成JS,我添加了.tern-project这样的文件。

{
    "libs": [
        "browser",
        "ecmascript",
    ],
    "loadEagerly": [
    ],
    "plugins": {
        "threejs": {}
    }
}

我还将threejs.jsthreejs.json 复制到了tern-threejs 生成的项目目录中。

但是,与 tern-threejs's demo codemirror 相比,YouCompleteMe 不显示语义完成

比较:

代码镜像:

neovim:

注意:我根本看不到任何完成。

似乎是什么问题?

【问题讨论】:

    标签: javascript three.js neovim youcompleteme tern


    【解决方案1】:

    threejs.js 是一个 tern 插件 文件,threejs.json 是一个 tern 文件。插件文件应复制到tern/plugin 目录中,库文件需要放在tern/defs 目录中。这两个目录存在于 tern 目录中。

    安装了“YouCompleteMe”后,此目录路径为:~/.vim/YouCompleteMe/third_party/ycmd/third_party/tern-runtime/node‌​_modules/tern。您只需要复制上述文件之一。插件文件或lib文件;并相应地更新您的.tern-project 文件。所以:

    1. 首先确保您已在 YouCompleteMe 上启用 Tern 完成程序。例如在我的 Mac 上,我必须运行以下命令:

      cd ~/.vim/bundle/YouCompleteMe
      ./install.py --tern-completer
      

      有关如何在其他环境中执行此操作的详细信息,请参见 YouCompleteMe installation guide

    2. 复制threejs.js,然后导航到

      ~/.vim/YouCompleteMe/third_party/ycmd/third_party/tern-runtime/node‌​_modules/tern/plugin/
      

      然后粘贴。

    3. 更新项目的.tern-project 文件如下:

      {
          "libs": [
              "browser",
              "ecmascript",
          ],
          "plugins": {
              "es_modules": {},
              "threejs": {}
          }
      }
      

      注意,当您使用 ES6 模块模式系统时,我还包含了 es_modules 插件(这是 tern 本身附带的插件)。

    【讨论】:

    • 好吧,它没有用。对于初学者来说,没有像YouCompleteMe/third_party/ycmd/third_party/tern 这样的目录。我设法找到YouCompleteMe/third_party/ycmd/third_party/tern-runtime/node_modules/tern,所以我将threejs.js 复制到plugin 目录,但它没有工作。
    • 即使我用--tern-completer 运行./install.py,问题仍然存在。
    • @sohnryang,你的燕鸥路径是正确的;所以我更新了答案。顺便说一句,您是否还将.tern-project 文件复制到您的项目目录中。您所有的.js 文件都应放在已放置.tern-project 的目录中或与该目录的后代一起。
    • 我已经更新了.tern-project 文件,但是我看不到任何完成。
    猜你喜欢
    • 1970-01-01
    • 2016-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-22
    相关资源
    最近更新 更多