如何编写我自己的 handlebars helper 并在 patternlab-node 中使用它?

How to write my own handlebars helper and use it in patternlab-node?

我在 Windows 上使用 Pattern Lab Node v2.12.0,使用 Gulp 版本的 Node v8.11.1。

我很困惑如何实际编写我自己的车把助手并在 patternlab-node 中使用它。我读到有 patternlab 插件,但这是加载车把助手的正确方法吗?

我希望有人能指出我正确的方向。我也没有在官方文档页面上找到有关插件或任何内容的任何信息。

提前致谢。

对于任何对此也感兴趣的人,我可以推荐阅读我在此处打开的问题 https://github.com/pattern-lab/patternlab-node/issues/958 or read the source code of a working plugin I finally managed to create and publish here https://www.npmjs.com/package/plugin-node-patternlab-inline-assets

我在阅读 Pattern Lab Node 的源代码时发现的一些线索

  • Plugin-Folders 必须以前缀“plugin-node-”开头(例如 plugin-node-myplugin)so Pattern Lab can find your plugin in node_modules(否则它不会执行)
  • 您可以通过在 patternlab.engines.handlebars.engine 中传递的 patternlab 对象访问插件的导出函数中的 Handlebars.js可以执行 registerHelper 来注册你的 Handlebars.js 助手。

module.exports = (patternlab) => {
    if (!patternlab) {
        process.exit(1);
    }

    patternlab.engines.handlebars.engine.registerHelper('your-helper', (parameter) => {
        return 'your result of the helper';
    });
};

如需进一步阅读,请参阅糟糕的文档:https://github.com/pattern-lab/patternlab-node/wiki/Creating-Plugins