【问题标题】:Why Snowpack is not taking my type declaration files?为什么 Snowpack 不接受我的类型声明文件?
【发布时间】:2021-02-05 17:54:26
【问题描述】:

我在snowpack中有如下配置:

/** @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

【问题讨论】:

    标签: typescript babeljs snowpack


    【解决方案1】:

    您提出问题的方式 - snowpack '不占用'您的 .d.ts 文件 - 对我来说有点含糊。如果您的意思是您的编辑器(假设 VSCode)没有给您自动完成功能,那么请尝试将文件添加到 tsconfig.json 中的“包含”数组中:

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

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

    【讨论】:

    • @Montana 似乎是一个公平的问题——我也不是 100% 确定你在问什么。这个答案有帮助吗?如果没有,怎么没有?等等。
    猜你喜欢
    • 1970-01-01
    • 2023-03-27
    • 2014-08-26
    • 2011-04-16
    • 2013-01-13
    • 1970-01-01
    • 2020-05-12
    • 2022-11-16
    • 1970-01-01
    相关资源
    最近更新 更多