有人可以帮我修改我的代码吗?
这是 Articlefournisseurs 模型:
import { Conditionnement } from "./conditionnements";
// import { IntefaceConditionnements, IntefaceConditionnement } from "./inteface-conditionnements";
import { InterfaceArticlefournisseurs } from "./interface-articlefournisseurs";
export class Articlefournisseur implements InterfaceArticlefournisseurs {
id?: number | undefined;
conditionnement: Conditionnement[];
constructor(articlefournisseurInterface: InterfaceArticlefournisseurs) {
this.conditionnement = articlefournisseurInterface.conditionnement;
}
}
这是接口 InterfaceArticlefournisseurs :
import { IntefaceConditionnements } from "./inteface-conditionnements";
export interface InterfaceArticlefournisseurs {
id?: number,
conditionnement: IntefaceConditionnements[]
}
这是条件模型接口:
export interface IntefaceConditionnement {
id?: number,
articleId: number,
idUniteCommande: number,
coefficientAchatCommande: number,
idUniteAchat: number,
coefficientInventaireAchat: number,
iduniteInventaire: number,
coefficientInventaire: number,
idUniteFt: number,
articlefournisseurId: number,
}
export interface IntefaceConditionnements {
conditionnements: IntefaceConditionnement[];
}
import { IntefaceConditionnements, IntefaceConditionnement } from "./inteface-conditionnements";
export class Conditionnement implements IntefaceConditionnements {
conditionnements: IntefaceConditionnement[];
constructor(conditionnements: IntefaceConditionnement[]){
this.conditionnements = conditionnements;
}
*[Symbol.iterator]() {
for (let conditionnement of this.conditionnements) {
yield conditionnement;
}
}
}
我的问题是,当我尝试返回 Conditionnement 数据时,出现以下错误:“InterfaceConditionnements”类型中缺少属性“[Symbol.iterator]”,但“Conditionnement”类型中需要属性“[Symbol.iterator]”
我期望有这样的数据:
ArticleFournisseur.Conditionnement[0]:{...} 文章Fournisseur.Conditionnement[1]:{...}
并在我的项目的组件 html 中循环使用它。
您遇到的错误表明 TypeScript 期望 Conditionnement 类实现 [Symbol.iterator] 方法,因为它将其用作生成器函数。但是,在您的 IntefaceConditionnements 接口中,您尚未指定此方法。要解决此问题,您需要确保您的 IntefaceConditionnements 接口包含 [Symbol.iterator] 方法签名。
以下是修改 IntefaceConditionnements 接口以包含 [Symbol.iterator] 方法的方法:
export interface IntefaceConditionnements extends Iterable<IntefaceConditionnement> { conditionnements: IntefaceConditionnement[]; }