2012-11-26 88 views
2

我剛剛完成了一個使用ASP.NET MVC,jQuery和jQueryUI的項目。我寫的其中一個頁面仍然在困擾着我,因爲我最終爲事件處理程序編寫了很多客戶端代碼,並且由於頁面上的控件和它們的狀態(頁面上的控件交互的複雜性是非常互動的,並有一個谷歌文檔的感覺)。我的問題是什麼最佳實踐可用於客戶端開發(特別是使用jQuery & jQueryUI)有複雜的交互(如谷歌文檔或雅虎的郵件客戶端)?我對代碼的最大抱​​怨是,對於幾乎所有的事件處理程序,我最終都寫了很多if語句,這些語句根據頁面上其他控件的狀態執行代碼。似乎必須有一種以更受控制的方式來處理這個問題的方法。使用JavaScript和jQuery開發複雜網頁的最佳實踐

+0

我認爲你需要對你當前使用的代碼風格更具體一些。 –

+1

我總是在對象文字中做大型項目,在「MVC」類型的佈局中,從主控制函數調用不同的功能,視圖,模型等。其他人可能有他們的方法,但只是編寫一大堆事件處理程序不會削​​減它,除非它是一個小巧的可管理網站。 – adeneo

+0

您是否可以承擔更多的往返旅程,並將服務器端的一些服務器端,如果有這樣的事情稱爲演示模式。 –

回答

0

在一般情況下,更模塊化,你做的事情這將是更容易把一個複雜的應用。將事情分解成只執行一件事(單一責任)的離散組件,並且具有明確定義的API來與系統的其他部分進行交互。理論上聽起來很簡單,但實際上,在開始編寫任何代碼之前,您確實需要對應用程序的體系結構進行大量的思考。

約翰帕帕的course on Single Page Applications是一個很好的開始。

0

我學到了很多東西,通過'project silk'去:

項目絲綢爲構建跨瀏覽器的網頁,重點放在客戶端交互 應用指導。

從您給出的簡短描述看來,您的應用程序的某些部分如何與其他人進行通信似乎主要存在問題。聽起來你有很緊密的聯繫。
This可能會給你一些想法。

-1

決定選擇客戶端框架時有很多選項。

通過TODOMVC項目的所有項目。

我會選擇中小型應用AngularJS和GWT爲更大的應用程序(ASPNET作爲服務器端)