2013-02-22 76 views
0

我打算使用Backbone或Angular編寫Web應用程序。我們希望將「小部件」從服務器推送到客戶端(即半複雜,動態但基本上自主的UI元素......可能就像流行的TodoMVC應用程序)。所以我們需要發送一個模板,一些javascript(控制器等),可能是CSS和JSON數據(模型)。MVC:在JSON響應中傳遞HTML模板而不是單獨的資源?

我們正在討論如何發送所有信息。多少可以,以及應該封裝在JSON中?

是否有可能通過傳遞的數據創建文件?即我們可以撤出CSS並將規則應用於我們的文檔?我相信通過這種方式運行javascript會更容易。

我的印象是,能夠緩存模板很重要......是否需要將它作爲(單獨)資源加載而不是作爲某個巨大JSON對象的一部分加載?

至於CSS,它需要在插入到DOM之前加載(所以我們不想只是承諾)。是否有道理 - 甚至有可能 - 通過JSON中的CSS規則並以某種方式提取它們?

編輯:爲了更全面地描述我正在處理的事情,我只專注於前端。後端可以根據需要自定義發送資源 - 他們會根據前端需求進行優化。我們的後端堆棧包括MongoDB,Tapestry,ActiveMQ。

需要發送的有效負載將是將Mac Dashboard Widget或Windows Gadget等內容推送到瀏覽器所需的所有資源。所以HTML,CSS,Javascript,數據都會被髮送過來。我們希望事情變得活潑,並儘可能減少服務器請求,因爲這些有效載荷中的一些可能有些大。

回答

0

你的問題相當模糊,通過在不同的編譯平臺上編碼可以改變答案。您選擇的應用程序設計也會影響爲X設備實現X類型應用程序所遵循的最佳實踐。有一種方法可以讓貓知道你的皮膚。

你發送了什麼信息?這是很多原始數據數組嗎? XML是否更有利於更多文檔?如果數據存儲在存儲庫中並且您將查詢它,則需要與DBA一起工作。您是否需要編寫代碼來格式化數據,還是需要DBMS以您需要的格式輸出它?

你是什麼意思的CSS需要加載之前被插入?一切都按照您指定的順序加載,以確保您的CSS在適當的時候加載不應該成爲問題。如果您使用的是ASP.NET,您也可以使用SSM(樣式表管理器)來爲您的CSS提供服務,並只加載需要的內容。如果你有很多樣式表服務,SSM是很棒的。

當您進入設計階段時,您提出的很多問題將得到解答。爲了得到一些可靠的答案,而不是僅僅猜測什麼是最好的方法,你需要發佈比這更多的細節。在這一點上的任何答案都不應該在你的決定中佔有很大的份量。他們當然不會挖。

+0

是的,您可以在JSON數據集中發送CSS規則,但爲什麼?然後,您必須爲瀏覽器構建CSS規則並將其應用於視圖。我想如果這是你唯一的選擇,或者你有一個驚人的組裝和應用CSS的方法,它是有意義的。我沒有太多的關注移動開發,但在13年多以來,我從來沒有業務需要以任何特殊格式實現或提供CSS。 – 2013-02-22 03:31:43

+0

感謝您的迴應!做了一個編輯來澄清你的一些問題。 – 2013-02-22 06:25:14

相關問題