2014-05-18 33 views
1

目前我有兩種不同的方式來防止我想將外部代碼加載到我的打字稿文件中。用打字稿導入外部javascript的最佳方法

如果我指的是另一個打字稿文件我必須寫:

import object = require('./path/to/the/internal/module'); 

,但如果我從一個現有的js文件加載代碼,我必須那樣做:

/// <reference path="./types/angular/angular.d.ts" /> 
///<amd-dependency path="angular"/> 
var angular:ng.IAngularStatic = require('angular'); 

有沒有辦法讓這兩樣東西看起來一樣?這樣我可以比如做這樣的事情:

/// <reference path="./types/angular/angular.d.ts" /> 
import angular = require('angular'); 

順便說一句,你推薦我加載外部之類的東西角,jQuery的,...通過requirejs或全球範圍內對自己的腳本標籤?

回答

4

就宣佈它爲外部模塊

/// <reference path="./types/angular/angular.d.ts" /> 
declare module 'angular'{ 
    var angular:ng.IAngularStatic; 
    export = angular; 
} 

// now you can do: 
import angular = require('angular'); 
+0

我做了類似的事情。你可以在這裏看到更詳細的例子:http://stackoverflow.com/questions/18171045/using-requirejs-with-typescript-and-angularjs/23737409#23737409 – Vojta