0

我正在开发几个 web 应用程序,因此,我决定创建一个包含所有 ccs 和 bootstrap、moment 和其他要重用的插件的插件。我想在我的基础插件中使用的一个插件是 ember-simple-auth。我将其声明为依赖项,但在运行时未包含在项目中。因此,在浏览器中我收到丢失文件的错误。

根据@marcoow where,这已经足够了。

应用package.json

"devDependencies": {
  "broccoli-asset-rev": "^2.6.0",
  "ember-ajax": "^3.0.0",
  "ember-cli": "~2.14.2",
  "ember-cli-app-version": "^3.0.0",
  "ember-cli-babel": "^6.3.0",
  "ember-cli-dependency-checker": "^2.0.1",
  "ember-cli-eslint": "^4.2.0",
  "ember-cli-htmlbars": "^2.0.3",
  "ember-cli-htmlbars-inline-precompile": "^1.0.2",
  "ember-cli-inject-live-reload": "^1.7.0",
  "ember-cli-moment-shim": "^3.4.0",
  "ember-cli-qunit": "^4.0.0",
  "ember-cli-sass": "^7.0.0",
  "ember-cli-shims": "^1.2.0-beta.2",
  "ember-cli-sri": "^2.1.0",
  "ember-cli-uglify": "^2.0.0-beta.1",
  "ember-data": "^2.14.3",
  "ember-export-application-global": "^2.0.0",
  "ember-load-initializers": "^1.0.0",
  "ember-resolver": "^4.4.0",
  "ember-models-table": "^1.13.0",
  "ember-simple-auth": "^1.4.0",
  "ember-source": "^2.14.1",
  "loader.js": "^4.6.0",
  "universe-gui": "0.2.0"
},

插件package.json

"dependencies": {
  "ember-cli-babel": "^6.8.1",
  "ember-cli-flash": "^1.4.3",
  "ember-cli-htmlbars": "^2.0.3",
  "ember-cli-sass": "^7.0.0",
  "ember-crumbly": "1.0.7",
  "ember-i18n": "5.0.2",
  "ember-moment": "7.3.0",
  "ember-simple-auth": "^1.4.0",
  "ember-truth-helpers": "1.3.0"
}
4

1 回答 1

1

您可以在默认蓝图中使用afterInstall挂钩:

ember g blueprint name-of-your-addon

module.exports = {
  normalizeEntityName: function() {},

  afterInstall: function(options) {
    return RSVP.all([
      this.addPackageToProject('npm-package'),
      this.addAddonToProject('ember-addon')
    ]);
  }
};

在开发插件时,我也遇到了这个问题。
这篇文章帮助了很多(尽管它现在有点过时了),以及官方文档

于 2017-09-27T01:32:04.570 回答