为了在我的大多数 Apostrophe 项目中有一个通用设置,我计划构建一些自定义 npm-modules 来捆绑它们并将它们添加到我的项目中。我想在其中添加的一些功能,包括添加小部件和后端功能,编辑官方撇号模块的设置(例如,为 设置默认页面类型apostrophe-pages
)并覆盖 nunjuck 块和/或模板。
这两件事都可以很容易地在项目级别的配置上被 Apostrophe 的隐式子类化机制覆盖,所以我可以使用自定义样板来实现为不同项目共享公共基础设置的目标,尽管我会失去通过发布升级我的默认值的能力我的节点模块的新版本。
总而言之,我在考虑像这样的 Maven 风格的依赖层次结构:
Apostrophe npm modules <- custom npm modules <- project modules
来自基于 Java 和 Maven 的 CMS,我知道我需要在很多事情上改变我的思维方式,所以:我正在尝试做的事情是可能的,它在 Apostrophe 世界中有意义吗?什么是“撇号方式”来实现这样的事情?我是否需要improve
为每个要扩展的模块创建一个带有 moog 选项的自定义 npm 模块?
提前致谢。
即使在npm_modules
目录中,撇号将首先构建基础模块,然后扩展这些模块的模块,这意味着您的自定义 npm 模块将遵循与官方撇号模块相同的继承链。您可以像覆盖任何其他撇号模块一样覆盖它们。
meta module (apostrophe-pieces) > custom-pieces (piece extension, custom npm module) > custom-pieces (project-level overrides)
您只需lib/modules/
按照覆盖 部分的相同方式有选择地覆盖文件和方法apostrophe-blog
,例如lib/modules/custom-pieces/views/widget.html
我是否正确理解您想要覆盖事物的方式?
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句