Babel.js 为什么Snowpack不接受我的类型声明文件?

kdfy810k  于 2022-12-16  发布在  Babel
关注(0)|答案(1)|浏览(108)

我有以下配置在积雪:

/** @type {import("snowpack").SnowpackUserConfig } */
module.exports = {
  mount: {
        public:{ url: '/', static: true },
        src: { url: '/dist' },
        runtime: { url: '/runtime' },
  },
  plugins: [
        '@snowpack/plugin-typescript',
        ['@snowpack/plugin-babel', 
            {
                'input': ['.ts', '.tsx'],
            }
        ]
  ],
  packageOptions: {
    /* ... */
  },
  devOptions: {
    /* ... */
  },
  buildOptions: {
    /* ... */
  },
};

这是在我的声明文件index.d.ts中,但是当我启动开发服务器时,Snowpack没有阅读它。

declare global {
    namespace JSX {
        interface IntrinsicElements {
            [elName: string]: any;
        }
    }
}

使其工作的唯一方法是将文件名更改为index.ts

mmvthczy

mmvthczy1#

你对问题的表达方式-- snowpack 'not take' your .d.ts files --对我来说有点含糊,如果你的意思是你的编辑器(假设VSCode)没有提供自动完成功能,那么试着把文件添加到你的tsconfig.json的“include”数组中:

{
    "include": [
        ...
        "index.d.ts",
    ]
}

我从create-snowpack-app CLI工具使用的基本类型脚本模板中找到了这个解决方案:https://github.com/snowpackjs/snowpack/tree/main/create-snowpack-app/app-template-blank-typescript.d.ts文件位于“types”文件夹中,然后将该文件夹包含在tsconfig中。

相关问题