typescript - 在 svelte 文件中导出 typescript 类型
问题描述
我想导出我在一个文件中定义的类型并将其导入另一个文件中。
export type myNewType = {name: string};
当我添加时,linter 向我显示以下错误export
:
Modifiers cannot appear here.
我可以通过创建一个新ts
文件并从中导入类型来使其工作。我只想知道是否有办法在svelte
文件中定义类型。
更新:
我使用 sapper 模板,它可以正常运行,但TS
功能不起作用,并且在vscode
从 svelte 文件导入类型和导出类型时显示错误。
解决方案
您需要从模块脚本导出类型,而不是普通脚本。您还需要lang="ts"
在普通脚本或模块脚本上添加属性。这将起作用:
<script context="module" lang="ts">
export type myNewType = {name: string};
</script>
<script>
export let aProp: string;
</script>
<p>some html</p>
一般来说,当你想从另一个不是组件本身的 Svelte 文件中导入某些东西时,你需要在模块脚本中声明该导出。
推荐阅读
- python - 如何在Django admin的列表显示中显示富文本html
- css - 关闭按钮在引导反应弹出窗口中未垂直居中
- python - 尽管在 cmd 中成功安装,Python 仍显示“没有名为 SALib 的模块”
- bash - 使用 sed 查找和替换多行字符串
- python - struct.error: unpack 解压 c++ 结构时需要 288 字节的缓冲区
- linux - SSH 权限有什么区别?
- django - 自定义内置 django 模型表单
- node.js - NodeJS 无法连接到服务器 ECONNREFUSED 上的 MongoDB
- javascript - 即使以开发者工具为中心,文本也不以移动设备为中心
- ruby - Ruby 中的逐行分析器