我是Angular 2 / Typescript的新手。我正在解决Typescript中的接口。我的意思是,通过使用此方法,我们可以在编译或开发时本身检查类型。
我如下创建了一个具有2个属性和1个函数的Interface ts文件:
export interface EmpEnities{
empname : string;
deptname :string;
validation();
}
我的组件:
import { Component } from '@angular/core';
import { EmpEnities } from './IEmloyee'
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'app';
Employees : EmpEnities[] = [
{empname:'sreekanth',deptname:'xyz',validation(){return 'a'}},
{empname:'sreekanth',deptname:'xyz',validation(){return false}},
{empname:'sreekanth',deptname:'xyz',validation(){return true}}
]
}
如果不使用三个成员(2个属性+ 1个函数)中的任何一个,我将出现编译时错误。
现在,我的标准是:如果我的Validation()
没有返回布尔值,如何确保出错?
如果在对象数组中观察,则第一个validate()
返回字符串,其余的返回布尔值。
我可以指定在接口中声明的函数的返回类型吗?
尝试一下
export interface EmpEnities{
empname : string;
deptname :string;
validation: () => boolean;
}
export class AppComponent {
title = 'app';
Employees : EmpEnities[] = [
{empname:'sreekanth',deptname:'xyz',validation: () => {return 'a' === 'a'}},
{empname:'sreekanth',deptname:'xyz',validation: () => {return false}},
{empname:'sreekanth',deptname:'xyz',validation: () => true}
]
}