balupton
(Benjamin Lupton)
1
我最近发布了主题组件:
该组件通过 ESM 方式导入了 npm 包 extract-timestamp。该包是使用 boundation 脚手架生成的,它同时提供适用于 Node.js 的 CommonJS 版本和适用于浏览器的 ESM 版本。
主题组件的 JavaScript 文件 source/index.js 以如下方式导入依赖项 extract-timestamp:
该文件使用 build.bash 脚本将包含主题组件逻辑的 source/index.js 文件转换为 Discourse 所需的 common/header.html:
运行方式为执行 bash ./build.bash;如果你使用的是 npm scripts 工作流,也可以通过 npm run build 来运行,具体配置如下:
最终会生成一个 common/header.html 文件,该文件已将之前的导入内容打包为单个文件:
这对其他正在开发自己主题组件的开发者来说可能很有用。
我后续可能会在 boundation 中添加对 Discourse 主题组件的一级脚手架支持,以自动化本指南中的流程。
3 个赞