0

我在命名我的 AMD 模块时遇到问题。这样做的最佳做法是什么?

例如 IProfileService.ts:

export interface IProfileService {
    savePersonalInfo(): void;
}

在我的控制器文件中:

import ps = module('../contracts/IPersonalInfoScope');
import pf = module('../contracts/IProfileService');

export class PersonalInfoCtrl {    
    ...    
    constructor(
        private $scope: ps.IPersonalInfoScope,
        private profileService: pf.IProfileService
        ) {...};
    };
    ...
}

因此,我需要为每个接口、类等创建问题,例如子名称:ps、pf,因为每个文件都有一个类/接口。我可以这样做:contracts.IPersonalInfoScope,contracts.IProfileService而不将它们放在一个文件中吗?

4

1 回答 1

0

可能不是,因为合并这两种类型 (pspf) 的唯一方法是使用变量。但是变量在变量声明空间中,不能用于声明类型。即你不能:

var x = {a:123,b:123};
var y:x; // Error

更多:http ://basarat.github.io/TypeScriptDeepDive/#/declarationspaces

于 2013-05-06T14:00:31.210 回答