2015-01-04 25 views
-1

我看到的所有培訓視頻只能看到非常基本的功能和視圖模型結構,其定義只顯示所解釋的主題。對於大型應用程序,這並不總是可行的。關於如何構建ViewModels和腳本文件的知識最好的方法

我對JavaScript和KnockoutJs相當陌生,需要您對哪種方法最好,哪些方法有效以及哪些方法無效提供反饋。

我想知道在構建web應用程序時如何構建viewmodels和javascript文件。這樣做可維護性和最佳實踐的最佳方式是什麼?

這是一個基本示例,我將使用「揭示模塊模式」。

var app = app || {}; 
app.PersonViewmodel = (function() { 
var self = this; 
    self._persons = ko.observableArray([]); 

return { 
    persons: self._persons 
}; 

})(); 

ko.applyBindings(app.PersonViewmodel); 

這是myapp.js中的內容。

我有一些其他問題:

  • 難道我滴的ViewModels上述減速我$(function() {});裏面?
  • 我是否在viewmodel中創建了可觀察的屬性,我想用它來標記IsVisible或IsClicked?雖然這些屬性與人物視圖模型無關,但它仍然是視圖上的行爲所必需的?
  • 如何傳入並處理一個視圖模型到另一個視圖模型?
  • 是否建議在標準js函數()內使用viewmodel?或者您是否需要將視圖模型的所有操作都保留在其內部?
  • 你是否在你的項目中爲每個視圖模型創建了一個獨立的.js文件?

任何反饋與一些例子將不勝感激。再次,我對初學者的問題表示歉意。

在此先感謝!

回答

0

我會首先說,它取決於您根據您的特定要求遵循的最佳實踐/設計模式。

個人而言,我喜歡將我的ViewModels分離成文件,即PersonViewModel.js,CompanyViewModel.js,其中viewmodel特定的邏輯只存在於一個地方。

您還可以擴展全球KO,包括自定義邏輯,如下所示:http://keestalkstech.com/2014/04/subscribe-to-entire-knockout-viewmodel/

至於組織代碼,構建它,更多的 - 確保你明白KO組件http://knockoutjs.com/documentation/component-overview.html

相關問題