1
A
回答
0
我會說,我們可以考慮一下這款接口及其實現
namespace Common.Models
{
export interface IPaginationModel {
PageNumber: number;
PageSize: number;
SearchText: string;
Ascending: boolean;
}
export class PaginationModel implements IPaginationModel {
constructor(
public PageNumber: number,
public PageSize: number,
public SearchText: string,
public Ascending: boolean
){}
}
}
,然後我們可以因此使用這樣的
// we use an Interface to assure that the type is as it should be
// we create object which fits to IPaginationModel structure
let paginationParams: Common.Models.IPaginationModel = {
PageNumber: this.pageNumber,
PageSize: this.pageSize,
SearchText: this.denominationFilter,
Ascending: true
};
// here we use a class
// to call its constructor
let pagParams = new Common.Models.PaginationModel(
this.pageNumber,
this.pageSize,
this.denominationFilter,
true);
// and we can even use class as interface (as the first example)
let paginationParamsAsClassAPI: Common.Models.PaginationModel = {
PageNumber: this.pageNumber,
PageSize: this.pageSize,
SearchText: this.denominationFilter,
Ascending: true
};
,我們可以使用接口和類作爲的類型時,同時建立純JS對象(第一和第三實施例)或我們可以使用類構造函數建立這樣的例子。
檢查here
相關問題
- 1. 打字稿型後衛運營商
- 2. 無法找到數字文字運營商的運營商‘’
- 3. 使用新的運營商
- 4. 運營商無法應用
- 5. 使用打字稿對象傳播運營商與此關鍵字
- 6. 無法轉換雙新運營商
- 7. RxJs運營商造成打字稿錯誤
- 8. 新的運營商
- 9. 採用新的運營商
- 10. 使用運營商
- 11. 使用「?」運營商
- 12. 使用新的運營商在C++
- 13. C++新的運營商使用問題
- 14. 新線運營商
- 15. 無法在打字稿中運行uibmodal
- 16. 運營商新的Arduino的
- 17. 使用運營商的 - > *
- 18. 有沒有使用運營商新
- 19. 超載的「新」運營商
- 20. 運營商新的C++
- 21. C++在新的運營商
- 22. 運營商的情況下運營商
- 23. 的JavaScript +運營商VS - 運營商
- 24. 用新運營商無法理解java語句
- 25. 無法檢測到移動運營商
- 26. ANTLRWorks:無法獲得運營商合作
- 27. 使用蒙戈$切片運營商與其他運營商
- 28. C++使用,而不是運營商運營商INT()+
- 29. 使用||運營商通知
- 30. 使用運營商zipWithN
你需要分享Common.Models.PaginationModel'的'代碼,但它似乎是,如果第一部作品,它不是一個類,但一個接口,如果是這樣的話,那麼你不能使用'new'關鍵字 –
和Common.Models。你有定義嗎? – LDJ