問題描述
動態 ng‑repeat 表單的優雅解決方案 (Elegant solution for a dynamic ng‑repeat form)
我是 AngularJS 的新手,我遇到以下問題:我想用一堆鍵來迭代一個“屬性”數組,這些鍵用於存儲在對像中的值。
<div ng‑repeat="key in attributes">
{{key}}: <input type="text" value={{Object.key}} name="{{key}}">
</div>
這段代碼只顯示{{column}} 的正確鍵,但沒有為 {{Object.column}} 的值提供結果。短語 {{Object.{{column}}}} 也不起作用。
如果我運行代碼,給對像一個靜態鍵(例如 ID),一切都會完美運行。
我可以去
<div>
id: <input type="text" value={{Object.id}} name="id">
name: <input type="text" value={{Object.name}} name="name">
value: <input type="text" value={{Object.value}} name="value">
and so on...
</div>
但是這種靜態形式似乎不是完美的解決方案。
有人可以幫助我嗎?
參考解法
方法 1:
You should do something like this ‑
<div ng‑repeat="key in attributes">
{{key}}: <input type="text" value={{ Object[key] }} name="{{ Object[key] }}">
</div>
方法 2:
Use {{Object[key]}}
. Angular considers .key to be a constant not a variable.
(by Jonas Scholz、atefth、Miroslav Jonas)