我在將 JSON 資料匯入我的 angular 應用程式時遇到問題。
我在做什么:
- 將 json 檔案匯入到變數中:
import _datos from '../../../assets/data.json';
正如這個問題的答案(How to import JSON File into a TypeScript file?)中所指定的,我正在使用typing.d.ts檔案以便能夠讀取資訊。
宣告一個介面以提高代碼的可讀性:
export interface Datos{
property1: String,
property2: String,
etc.
}
- 使用匯入的 json 檔案宣告和實體化陣列:
datos: Datos[] = _datos;
什么是預期
變數“datos”應將 JSON 檔案的內容作為陣列。
實際發生了什么
型別“{}”缺少來自型別“Datos[]”的以下屬性:length、pop、push、concat 和 26 more.ts(2740)。
更多資訊
我之前用一個較小的 JSON 檔案完成了它(這個檔案每個物件有大約 26 個屬性和 100k 個元素)并且作業正常。但是,這個失敗了,我真的不知道為什么。
uj5u.com熱心網友回復:
為避免錯誤:
Type '{}' is missing the following properties from type ...
確保正在分配的物件_datos是Datos型別的物件陣列。
將物件 { .. } 分配給物件陣列 [ {}, .. ] 時會發生這種情況
保存匯入陣列的變數需要宣告如下:
_datos: Datos[] = [];
然后將您的 JSON 檔案資料匯入 _datos。
我建議在將 _datos 的值分配給 datos 變數之前對其進行除錯。
uj5u.com熱心網友回復:
好吧,這是一個非常簡單的錯誤:
JSON 檔案中的 26 個屬性之一未正確寫入。為了使其作業,需要 JSON 檔案中的屬性和介面中的屬性匹配。
JSON 檔案是這樣的:
[
{
"organo_de_contratacion": "Consorcio de Transportes de la Bahía de Cádiz",
"estado_de_la_licitacion**:**": "Resuelta",
...
使 : 在屬性結束之前滑動并與介面屬性不匹配。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/327053.html
下一篇:Selenium獲取所有行
