簡體   English   中英

Angular 5-全局范圍內的調用函數

[英]Angular 5 - Calling functions on the global scope

我想在使用Angular構建的IonicFramework應用程序中使用video.js。 我曾嘗試通過npm安裝它,但是如果我嘗試導入,TypeScript無法識別任何可導入的模塊,並且我無法找到有關在TS / ES6應用程序中使用它的正確文檔。

我所做的就是嘗試像使用任何js庫一樣使​​用它。 我已經在index.html文件中包含了video.js腳本:

<script src="assets/js/video_v6_6_3.js"></script>

我向內看,它的作用是在全局范圍內聲明一個名為videojs的函數(我不喜歡它-但這就是它的編寫方式)。

在我的應用程序中,我嘗試在ngAfterViewInit方法調用上調用此函數,如下所示: videojs(this.videoId); 但是TypeScript在運行時會引發異常:

Typescript Error
Cannot find name 'videojs'.

有沒有辦法包裝此類庫,使其適合Angular導入? 還是讓TypeScript接受這種方法而不拋出錯誤? 我已經搜索過,但找不到有關這種情況的任何信息。

為了使打字稿停止抱怨,您可以將其聲明為any

declare const videojs: any;

或者,您可以嘗試像這樣導入(未經測試):

import * as videojs from 'videojs';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM