在将角形库构建到NPM软件包中时,RXJS for operator会在声明文件(.d.ts)中定向到计算机上的完整路径
此软件包的构建成功,但是在将其实施到应用程序中时将引发错误。
node_modules/@essent/ns-mobile-contract-ids/lib/contract-ids.service.d.ts(7,43): error TS1144: '{' or ';' expected.
node_modules/@essent/ns-mobile-contract-ids/lib/contract-ids.service.d.ts(12,7): error TS1005: '(' expected.
我正在构建的文件包含以下代码,其中rxjs导入引用node_modules中的rxjs / index.d.ts
import {of} from "rxjs";
return of({
agreementId: 1,
premiseId: 500,
connectionEANs: this.createConnectionEANsMap("01", "02"),
partnerId: 2
});
在构建时,contract-ids.service.d.ts包含以下内容:
constructor(http: HttpClient);
getContractIds(apiUrl: string): import("../../../../../../../../../Users/milansteenwinkel/Desktop/Projects/ns-mobile-library/node_modules/rxjs/internal/Observable").Observable<{
agreementId: number;
premiseId: number;
connectionEANs: Map<string, string>;
partnerId: number;
}>;
从node_modules的其他导入不会发生这种情况。
答案 0 :(得分:0)
方法需要一个类型定义才能正确创建声明文件。 添加了Observable作为类型。