簡體   English   中英

在backbone.js中從DOM初始化模型是否有意義?

[英]Does it make sense to initialize models from the DOM in backbone.js?

backbone.js依賴於restful應用程序來初始化模型,但漸進式增強呢? 數據已經在dom(或其中一些)中,所以即使html元素存在,我的模型是否仍然會調用restful接口? 是否有其他庫設計可能更適合這種情況?

Backbone可以很好地處理它。 我處理這種情況的方法是擁有一個工廠模型,它可以接收DOM節點並解析它以提取數據(id,字段等)。

如果為View構造函數提供'el'選項,則backbone不會獲取或呈現模型,因此您可以保持節點不變。

數據更改后,控制器將同步到服務器。 但是,無論是否顯示,您都必須小心應用您的應用程序所需的任何數據。

您不應該使用DOM元素使用后端數據初始化模型。 你有一個非常好的基礎設施,骨干不能做到這一點。 當你依賴DOM時,你需要在DOM結構發生變化時更改你的javascript。

也不要依賴骨干視圖來創建模型。 它必須反過來,模型決定了頁面上的視圖。

只需添加一個腳本元素並直接在那里創建JS對象。 您可以初始化集合,單個模型等。

您可以使用模板或DOM UI構建塊執行相同的操作:

<script type="text/js-template">
  <!-- Your template as realy do elements or using a js templating engine like _.template-->
</script>

加載您的頁面並讓您的應用在本地播放。

暫無
暫無

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

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