导入类型时 Sveltekit Typescript 解析错误

Sti*_*egi 3 typescript sveltekit

我在一个全新的 Sveltekit 项目中有这个非常简单的组件:

<script context="module" lang="ts">
    import type { Load } from '@sveltejs/kit';
    export const load: Load = ({ url }) => {
    const company = url.searchParams.get('company');
    return {
      props: {
        company
      }
    };
  }
   
  </script>
<script type="ts">
        export let company: string;

</script>

<h1>{company}</h1>
Run Code Online (Sandbox Code Playgroud)

但是,我总是在导入行出现错误: 解析错误

当我在 VSCode 之外运行应用程序时也会发生这种情况,因此这不仅仅是 IDE 的问题。

我的package.json:

{
    "name": "testapp",
    "version": "0.0.1",
    "scripts": {
        "dev": "svelte-kit dev",
        "build": "svelte-kit build",
        "package": "svelte-kit package",
        "preview": "svelte-kit preview",
        "prepare": "svelte-kit sync",
        "check": "svelte-check --tsconfig ./tsconfig.json",
        "check:watch": "svelte-check --tsconfig ./tsconfig.json --watch",
        "lint": "prettier --check --plugin-search-dir=. . && eslint .",
        "format": "prettier --write --plugin-search-dir=. ."
    },
    "devDependencies": {
        "@sveltejs/adapter-static": "^1.0.0-next.34",
        "@sveltejs/kit": "next",
        "@typescript-eslint/eslint-plugin": "^5.27.0",
        "@typescript-eslint/parser": "^5.27.0",
        "eslint": "^8.16.0",
        "eslint-config-prettier": "^8.3.0",
        "eslint-plugin-svelte3": "^4.0.0",
        "prettier": "^2.6.2",
        "prettier-plugin-svelte": "^2.7.0",
        "svelte": "^3.44.0",
        "svelte-check": "^2.7.1",
        "svelte-preprocess": "^4.10.6",
        "tslib": "^2.3.1",
        "typescript": "^4.7.2"
    },
    "type": "module"
}
Run Code Online (Sandbox Code Playgroud)

有人知道这里出了什么问题吗?

Sti*_*egi 6

找到解决方案:更改adpater时,我不小心从svelte.config.js中删除了svelte preprocess。这样做,效果非常好:

import adapter from '@sveltejs/adapter-static';
import preprocess from 'svelte-preprocess';

/** @type {import('@sveltejs/kit').Config} */
const config = {
    // Consult https://github.com/sveltejs/svelte-preprocess
    // for more information about preprocessors
    preprocess: preprocess(),

    kit: {
        adapter: adapter()
    }
};

export default config;
Run Code Online (Sandbox Code Playgroud)