问题描述
我已将 Snowpack 3 添加到我的应用程序中,它适用于 JS/TS 文件以及直接导入的触控笔文件。
文件结构类似如下:
view.js:
import 'view-styles.styl'
export default function view() {
return (
<div className='example-view'>Hello World</div>
);
}
view-styles.styl
@require './colors.styl'
.example-view
background-color: $mainColor
colors.styl
$mainColor = #ff0000
LiveReload/HMR 在更改直接导入的手写笔文件时按预期工作。更改colors.styl 文件中的任何内容时它不起作用。此文件中的更改仅在 view-styles.styl 文件更新后才会被选取。
这是 Snowpack 的已知限制吗?
我也可以手动触发更新,因为我有一种方法可以使用它们的文件名来识别这些文件。我还没有找到使用 Snowpack 的 JavaScript API 触发实时重新加载的方法。我能够使用 SnowpackDevServer.loadUrl 函数加载文件,但这也无济于事。
解决方法
我能够将其贡献给 snowpack stylus 插件。更改已集成到插件中:https://github.com/fansenze/snowpack-plugin-stylus