15 lines
781 B
TypeScript
15 lines
781 B
TypeScript
// 全局类型声明补充
|
||
// @astrojs/alpinejs 集成会在运行时把 Alpine 挂到全局(window.Alpine),
|
||
// 但 @types/alpinejs 是 CJS(export = Alpine),其顶层 declare const Alpine
|
||
// 不会自动进入模块上下文(.astro 的 <script> 是模块),导致 IDE 报 “Cannot find name 'Alpine'”。
|
||
// 用默认类型导入 `import type Alpine from "alpinejs"` 取真实的 Alpine.Alpine 接口类型作为全局声明,
|
||
// 既消除报错、又让 Alpine.data / .store / .magic 等方法以及 data 组件内的 this 都有完整提示。
|
||
// @types/alpinejs 是 export = 形式,esModuleInterop 开启时允许默认导入,TS 亦建议此种写法。
|
||
import type Alpine from "alpinejs";
|
||
|
||
declare global {
|
||
const Alpine: Alpine.Alpine;
|
||
}
|
||
|
||
export {};
|