卸载任何ember-cli- * addon会导致ember-try-config出错

时间:2016-06-20 20:48:18

标签: ember.js npm ember-cli eslint

的制备:将

  1. 安装ember npm install ember-cli
  2. 开始一个新项目:ember new ember-demo
  3. 现在,让我们尝试删除任何插件(我已尝试删除ember-cli-jshintember-welcome-page)并且我们将破坏ember项目,对ember实用程序的任何调用都将导致错误:

    Error: Cannot find module 'ember-try-config'
    at Function.Module._resolveFilename (module.js:339:15)
    at Function.Module._load (module.js:290:25)
    at Module.require (module.js:367:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/home/user/projects/ember-demo/node_modules/ember-cli/node_modules/ember-try/lib/utils/config.js:7:34)
    at Module._compile (module.js:413:34)
    at Object.Module._extensions..js (module.js:422:10)
    at Module.load (module.js:357:32)
    at Function.Module._load (module.js:314:12)
    at Module.require (module.js:367:17)
    

    这是我的环境:

    host@user $ ember --version  --verbose
    Could not start watchman; falling back to NodeWatcher for file system events.
    Visit http://ember-cli.com/user-guide/#watchman for more info.
    ember-cli: 2.6.2
    http_parser: 2.7.0
    node: 5.11.1
    v8: 4.6.85.31
    uv: 1.8.0
    zlib: 1.2.8
    ares: 1.10.1-DEV
    icu: 56.1
    modules: 47
    openssl: 1.0.2h
    os: linux x64
    

    以前的问题

    以前,我想在ember应用中使用 eslint 而不是 jshint 。我只是按照ember-cli-eslint github page的说明操作,然后运行这两个命令:

    npm uninstall --save-dev ember-cli-jshint
    ember install ember-cli-eslint
    

    在此之后我的项目变成了南瓜:没有人ember命令不起作用,抛出错误(见上文)

    如果你跳过卸载步骤 - 你不会得到南瓜))在这种情况下ember继续按预期工作,但是 eslint 赢得了默认项目的linting工具。

    任何人都知道,如何仔细删除ember项目中未使用/不需要的依赖项?

2 个答案:

答案 0 :(得分:0)

github上有一个未解决的问题ember-cli/ember-cli#6016。所以我目前的解决方法是:

  1. 创建新的余烬应用
  2. 运行ember install ember-cli-eslint
  3. package.json移除 ember-cli-jshint
  4. 删除./.jshintrc./tests/.jshintrc
  5. 删除本地节点模块rm -rm ./node_modules
  6. 重新安装节点模块:npm install
  7. 完成!

    此外,还有非常详细的安装ember for ember的说明:https://github.com/ember-cli/ember-cli-eslint#user-content-disabling-jshint

答案 1 :(得分:0)

根据 ember-try 插件(https://github.com/ember-cli/ember-try)导致的错误消息问题,这些问题在不同的环境中运行测试(请检查package.json / node_modules

如果是这样 - 您可以将其删除,或者只添加配置文件config/ember-try.js,例如(https://github.com/vvscode/js--ember-cli-ajax-logger/blob/master/config/ember-try.js),它们定义您想要运行测试的哪个版本的ember