TypeScript - استفاده از تعریف نوع بسته مشابه
من در برنامه تایپاسکریپت خود از fabric-with-gestures استفاده میکنم و همه چیز خوب است. با این حال، کتابخانه اصلی fabric انواع تعریفشده دارد و میتوانم آنها را با npm install --dev @types/fabric نصب کنم، اما تایپاسکریپت آنها را برای پکیج fabric-with-gestures شناسایی نمیکند.
چطور میتوانم از نوعهای fabric همراه با fabric-with-gestures استفاده کنم در حالی که هیچ ماژول @types/fabric-with-gestures وجود ندارد و من فرض میکنم نوعها عمدتاً مشابه هستند؟ آیا این اصلاً ممکن است؟
پاسخ شماره ۱
برای تمام بستهها به طور کلی، میتوانید یک نام مستعار نوع ایجاد کنید با افزودن گزینههای baseUrl و paths به tsconfig.json خود (من از fabric استفاده نمیکنم، اما یک تنظیم سریع بهتازگی به طور موفقیتآمیز کامپایل شد).
tsconfig.json:
{
"compilerOptions": {
...
// absolute name imports are resolved relative to baseUrl
"baseUrl": ".",
// alias "fabric-with-gestures" is mapped to path of fabric @types
"paths": {
"fabric-with-gestures": ["node_modules/@types/fabric"]
}
}
}
طرز استفاده :
// Use fabric-with-gestures. Types are internally mapped to @types/fabric
import { fabric } from "fabric-with-gestures";
