我正在尝试使用模型类中的方法,但它的抛出错误如
错误TypeError:act.sayHi不是函数
这是我的代码
模型类myModelClass.ts
export interface IMymodel {
name: string;
address: string;
age: number;
}
export class Mymodel implements IMymodel {
name: string;
address: string;
age: number
constructor() {}
sayHi(name): string {
console.log('Hiii' + name);
return 'Hiii'+name;
}
}
组件MyComponent.ts
import { IMymodel, Mymodel } from '../model/myModelClass.ts';
@Component({
selector: 'my-component',
templateUrl: 'myComponent.html'
})
export class MyComponent {
...
prepareData(data: Array<IMymodel>): Array<IMymodel> {
data.map((act: Mymodel) => {
act.sayHi(act.name);
});
return data;
}
}
答案 0 :(得分:3)
当您通过接口类型访问对象时,您还需要将sayHi
方法签名放入接口,并且该类型缺少名为sayHi
的方法。
export interface IMymodel {
name: string;
address: string;
age: number;
sayHi(name): string
}
和方法调用
prepareData(data: Array<IMymodel>): Array<IMymodel> {
data.map((act: IMymodel) => {
act.sayHi(act.name);
});
return data;
}