angular - איך לייבא קובץ JavaScript לפרויקט Angular4 ולהשתמש בפונקציה שלו בתוך קומפוננטה?


אני מנסה לייבא את קובץ openseadragon.min.js ב-index.html ולהשתמש בפונקציות שלו כפי שמופיע למטה,

var viewer = OpenSeadragon({
  id: "seadragon-viewer"
});

אבל זה גורם לשגיאה כמו ש‑OpenSeadragon הוא undefined.

כל פתרון יוערך, תודה

תשובה #1

נסה להכריז על המשתנה בראש הקומפוננטה שלך מיד מתחת ליבואיים שלך, לא בתוך הצהרת הייצוא של המחלקה שלך.

import { Component } from '@angular/core';

declare var OpenSeadragon: any;

@Component({
...
})

תשובה #2

אתה צריך טיפוסי אנגולר כדי לעשות זאת נכון עבור OpenSeadragon. גם לא כדאי להשתמש ב-vars ב-TypeScript כי זה משבור הקשר וגורם לבעיות טווח והעלאה.

אנא ראה https://github.com/alvaromartmart/types-openseadragon עבור טיפוסים