在我的Angular/Typescript2.2項目中,爲了開發目的,我不時導入*.json
文件作爲測試數據在我的組件中。 要允許導入.json
文件作爲一個模塊,我增加了以下內容typings.d.ts
Angular/Typescript - 由於模塊定義導致導入'* .json'文件不可能
declare module '*.json' {
const value: any;
export default value;
}
我當然可以用any
類型這些文件的內容分配到外地,但我想他們分配給字段改爲我的一個接口的類型。請注意,我希望將模塊定義中的值對所有類型保持開放。我不想將它硬編碼到1個接口。
import {ProcessMilestone} from '../../../domain';
import * as milestones from './test.json';
export class MilestoneSearchComponent implements OnInit {
data: ProcessMilestone[];
ngOnInit(): void {
this.data = <ProcessMilestone[]> milestones;
}
}
這給了我以下錯誤:
Type 'typeof '*.json'' cannot be converted to type 'ProcessMilestone[]>'. Property 'includes' is missing in type 'typeof '*.json''.
這比疏通因「*以.json」當前模塊定義,鑄造是不可能的。是否有可能調整這個,這樣纔有可能?我不知道可能性。
只有最小努力解決方案是可行的。如果不是,我將從後端獲取數據。
工程就像一個魅力,確實很小!從來沒有嘗試過雙重類型斷言。謝謝! –