【发布时间】:2021-07-20 10:22:06
【问题描述】:
我正在使用 svelte-preprocess 在我的 Svelte 应用程序中编译 typescript。
这里是苗条的文件:
<script lang="ts" src="./component.ts"></script>
<template src="./component.html></template>
<style src="./component.scss"></style>
这是 rollup.config.js 的精简部分
svelte({
preprocess: sveltePreprocess({
sourceMap: !production,
defaults: {
markup: 'html',
script: 'typescript',
style: 'scss'
}
}),
compilerOptions: {
dev: !production
}
}),
我在配置文件中也有这个
typescript({
sourceMap: !production,
inlineSources: !production
}),
我遇到的问题是 component.ts 没有发生源映射。当我在 component.ts 中某处的 Chrome 调试器中出现错误时,它会在 component.svelte 文件的最后一行显示一个行号,而不是 component.ts。
当我将代码内联到脚本 lang="ts" 标记中时,它确实可以工作,并且源映射正常。
我如何让 svelte-preprocess 处理源映射、打字稿和来自 .ts 文件的 svelte 组件文件?
【问题讨论】:
-
您是否尝试过设置
sourceMap: true而不是!production?