小编Stu*_*son的帖子

从Uri导入TypeScript模块

在TypeScript中是否可以从uri导入模块或引用定义文件?

我们正在将RequireJS用于我们的应用程序,并且希望从CDN提供我们的一些定义文件和TypeScript(或生成的JavaScript)文件,而不是将它们全部直接包含在我们的项目中.

引用定义文件
在TypeScript中,我们可以像这样引用定义文件:

/// <reference path="jquery-1.8.3.d.ts" />
Run Code Online (Sandbox Code Playgroud)

但是,我们想要做的是:

/// <reference path="https://github.com/borisyankov/DefinitelyTyped/raw/master/jquery/jquery-1.8.d.ts" />

export class UsesSomethingFromJQuery {

    TestMethod(element: JQuery) {
        // Do something with the supplied element
    }

}
Run Code Online (Sandbox Code Playgroud)

注意:我不打算使用Boris的github链接作为CDN.我用链接来演示这个概念.

导入TypeScript文件
我们还想从一个公共网站导入模块,如下所示:

import OtherModule = module('http://some-internal-site/ts/other');

export class UsesSomethingFromOther {

    TestMethod(c: OtherModule.TestClass) {

    }

}
Run Code Online (Sandbox Code Playgroud)

但是,在为模块提供uri时,我收到错误"无效的导入路径".

我们要解决的问题
我们有一个TypeScript文件库,可以为我们的控件,一些REST服务包装器和其他实用程序生成JavaScript.我们想在其他Web应用程序中使用这些常用控件.

当我们有一个特定于我们的某个网站的TypeScript文件(因此不是公共核心的一部分)依赖于在公共核心中定义的类时,我们希望使用uri引用依赖关系.因此上面的问题.

如果这些只是JavaScript源文件,我们会将它们托管在内部CDN上并从那里引用,但是使用TypeScript编译步骤我们会遇到问题.我们是以错误的方式接近这个吗?有没有更好的办法?

typescript

12
推荐指数
1
解决办法
6105
查看次数

标签 统计

typescript ×1