我在尝试将模块下的类导出到另一个模块时遇到问题。问题是有一个错误说导入的模块不是模块。
这是模块
/// <reference path="sensor_location.ts" />
module LATS.DataModel {
export class _RegistrationHelper {
static register(metadataStore) {
metadataStore.registerEntityTypeCtor('sensor_location', LATS.DataModel.sensor_location);
}
}
}
这是我的导入
import {_RegistrationHelper} from '../entities/_RegistrationHelper';
然后我继续在课前删除模块,但出现了另一个错误
Error: Uncaught (in promise): ReferenceError: LATS is not defined
我的问题是删除模块以导出类是否正确,还是有另一种导入模块的方法?我试图在模块之前添加导出但是出现错误,说该模块没有导出的成员
答案 0 :(得分:0)
模块在Angular-Framework中有另一个目的。这是错误的,并且无法在您希望在系统中的其他位置导入的模块中定义类。
您定义的助手类必须放在单独的文件或服务中。
e.g。
辅助-classes.ts
export class _LoginHelper {
// ...
}
export class _RegistrationHelper {
static register(metadataStore) {
metadataStore.registerEntityTypeCtor('sensor_location', LATS.DataModel.sensor_location);
}
}
//...
或者
helper.service.ts
//... Service-Header and imports
public login(user) {
//...
}
public register(metadataStore) {
metadataStore.registerEntityTypeCtor('sensor_location', LATS.DataModel.sensor_location);
}
}
然后从TS-File中导出该类,或者在需要该方法的任何地方使用该方法。