Tìm kiếm trang web

SvelteKit với TypeScript không có intellisense bên trong HTML?


Tôi có một thành phần trang đơn giản, nhưng tính năng intellisense bên trong HTML không hoạt động... Ngoài ra sau khi đổi tên thuộc tính, nó không đổi tên bên trong HTML, nó chỉ bị lỗi... Phiên bản Typescript: 4.8.4 Đây là mã của tôi:

<script lang="ts">
    import type { Blog } from "$lib/store/BlogStore";

    let blog: Blog = {
        id: 0,
        activeFrom: new Date(),
        isPublished: false,
        updatedAt: new Date(),
        content: {
            rows: [],
            notesHolder: []
        },
        previewImageUrl: '',
        tags: [],
        header: '',
        user: '',
        isPremium: false
    };
</script>

<div>
    {#each blog.<no intellisense here? as row}
        <div>
            <h1>{row.id}</h1>
            <p>{row.type}</p>
        </div>
    {/each}
</div>

đây là giao diện Blog của tôi:

export interface Blog {
    id: number;
    activeFrom: Date;
    isPublished: boolean;
    updatedAt: Date;
    content: BlogContent;
    previewImageUrl: string;
    tags: string[]; //tag
    header: string;
    user: string; // user
    isPremium: boolean;
}

Câu trả lời #1

Điều này có vẻ với tôi là vấn đề nhiều hơn về IDE/các tiện ích mở rộng của bạn, hơn là bản thân svelte/sveltekit.

Bạn đã không chỉ rõ IDE của bạn là gì và bạn đã cài những tiện ích mở rộng nào. Nhưng, trong vscode với các tiện ích mở rộng được khuyến nghị (svelt cho vs code) thật sự ví dụ đó không hoạt động với tôi, nhưng có vẻ như đó là một lỗi, bởi vì nếu bạn thử:

{#if blog.tags}
p
{/if}

Tự hoàn thành hoạt động, vì vậy intellisense rõ ràng hoạt động trong HTML. Tôi không thể tìm thấy vấn đề này được báo cáo trong kho lưu trữ, nhưng tôi nghĩ câu hỏi này có thể thích hợp hơn nếu là một vấn đề trên GitHub. Vì vậy, nếu bạn cũng nghĩ đây là một lỗi ở phía đó, hãy thoải mái nêu vấn đề tại đó.