【问题标题】:how to send the result of svelte-preprocess into a file如何将 svelte-preprocess 的结果发送到文件中
【发布时间】:2021-07-01 16:11:10
【问题描述】:

是否可以(如果可以,如何)将svelte-preprocess 运行的结果保存到外部文件中?

我的动机:我使用 TypeScript 编写了一个 Svelte 组件 - 但将我的 package.jsonsvelte 字段指向原始(即 TypeScript)源允许非 TypeScript 精通环境(例如 Svelte REPL)因语法错误而失败。

因此,我需要发布原始组件的转译版本 - 无需任何捆绑(允许 Svelte 优化其最终捆绑包)

[编辑] 下面显示的公认答案促使我编写一个 Svelte 预处理器,它实际上解决了上述问题。如果其他人遇到类似情况:看看save-to-file

【问题讨论】:

    标签: typescript svelte


    【解决方案1】:

    你可以自己创建一个预处理器,用生成的代码做你想做的事情

    确保在sveltePreprocess 之后包含您的预处理器以获取编译后的代码

    plugins: [
        svelte({
          preprocess: [
            sveltePreprocess({sourceMap: !production}),
            {
              script: ({attributes, content, filename, markup}) => {
                console.log({content, filename});
              },
              markup: ({content, filename}) => {
                console.log({content, filename});
              },
              style: ({attributes, content, filename, markup}) => {
                console.log({content, filename});
              }
            }
          ],
        }),
    

    您可以创建一种地图,并组装已编译的组件,因为您拥有脚本、标记和样式

    【讨论】:

      猜你喜欢
      • 2011-07-20
      • 2021-10-17
      • 2021-07-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-17
      相关资源
      最近更新 更多