簡體   English   中英

HTML 錯誤:“類型上不存在屬性”即使未顯示

[英]HTML Error: "Property does not exist on type" even when not displayed

我有一個使用 AngularJS 的 HTML 文件,如下所示:

<div *ngIf="Item">
    <!-- Create a 'display' for each category. -->
    <div *ngIf='Item.category === "book"'>
        <p>Book Title: {{Item.booktitle}}</p>  
    </div>
    <div *ngIf='Item.category === "sport"'>
        <p>Sport: {{Item.sport}}</p>
    </div>
</div>

該文件應該檢查項目是什么類別,並僅顯示與該類別相關的屬性。 這些類別用於不同的“項目”對象,並且這些項目不共享這些屬性。 我試圖做到這一點,因此如果項目是該類別,應用程序只讀取存在於特定類別的屬性,但無論事先使用 ngIf 語句如何,程序似乎仍會讀取它們並拋出“類型上不存在屬性”即使從未顯示這些屬性也會出錯。

我對解決這個問題的最佳猜測是在調用特定屬性以處理它們丟失時實現一個“if”語句,如下所示:

 <p>Book Title: {{ if Item.category ==="book" -> Item.booktitle, else -> "N/A" }}</p>

我不知道如何使用 HTML 或 AngularJS 來做到這一點,或者這是否是一個可行的解決方案。 我將如何解決這個問題?

看起來Item上的category屬性並不總是存在。

為了解決這個問題,您有幾個選擇:

  1. 使用條件鏈接來處理邊緣情況,如果屬性丟失,則條件失敗為 false(您需要預處理 JS 才能使其工作)
  2. 在該代碼之前放入某種 null 檢查以確保屬性始終存在並將其設置為空字符串或false或其他東西

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM