How to load external js script in angular 2 in runtime?

时间:2016-05-17 15:16:12

标签: javascript angular webpack twitter-fabric twitter-digits

I am using Twitter digits for authentication. It needs a small .js script to be downloaded and initialize it. They recommend directly fetching the file from their server.

I have to import

<script id="digits-sdk" src="https://cdn.digits.com/1/sdk.js" async></script>

and initialize the sdk using like Digits.init({}).

I am using angular2 webpack starter模板的事件。

之前我使用的是systemjs,我只是将文件名映射到url并将其导入我的组件。喜欢这个

  var map = { 'Digits':'https://cdn.digits.com/1/sdk' };

然后将其导入角色组件,如import * as Digits from 'Digits';

我知道有webpack外部,但它不一致。

console.log(Digits)中的{p> ngOnInit()有时会显示正确的对象,有时会出现未定义的错误。

1 个答案:

答案 0 :(得分:0)

我在这方面运气不错。我正在使用日历js文件,并希望从输入到控制器获取日期结果。就我而言,这是Pickaday。首先像往常一样导入文件,无论你的主要html文件是什么。

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

然后创建一个代表你需要的函数的类。

export class PikadaySource {
    field: any;
    firstDay: number;
    minDate: Date;
    maxDate: Date;
    yearRange: number = 1;
    disableWeekends: boolean;
    format: string = 'MM-DD-YYYY';
    init(){};
}

该课程的目的是防止发布者遇到问题。由于导入的脚本在全局范围内,因此现在应该可以使用。