ember.js 插件:如何操作文件?

ember.js addon: how to manipulate files?

我们有 5+ ember.js 个项目。我已经将所有常见功能提取为插件。其他项目依赖于我的插件 package.json(作为 npm 模块)。

我想在我的插件在任何项目上升级后(通过 npm install)做一些 post 处理。我需要做这样的处理:

有什么钩子可以做这些吗?有钩子的文档吗?

(npm documentation) 提供有关 package.json 的脚本字段的信息。您可以使用 installpostinstall 到 运行 任意脚本,它会处理您想要的更改。

我们做了什么:

  • 覆盖 /app/styles.css 文件: 我们没有使用 app/styles 文件。我们创建了一个凉亭插件来保持我们的风格。在我们的 ember 插件的 index.js 文件中,有一个名为 included(app) 的钩子。我们使用 app.import 调用将我们的样式放置到应用程序中。
  • 覆盖 router.js: 我们没有覆盖 router.js。修改需求很少发生。因此,如果需要进行任何修改,我们会在发布时公布。
  • 将一些文件放在 /translations 目录中: 升级后 ember-intl#2.8。我们不需要修改 /translations 目录。