我也創造了這些天淘汰賽單個頁面的Web應用程序,我可以給你一些小小的建議:
一)作爲「單頁的應用程序」教程建議我用Sammy.js來在我的應用程序中管理哈希路由,它工作得很好,它很容易學習 - >http://sammyjs.org/
b)我也使用require.js來「模塊化」我的應用程序,使它更容易維護,它也有助於加快一點點。這不是簡單易學(我還在它很新),但我認爲這可能是值得花一些時間就可以了 - >http://requirejs.org/
這裏是一個sammyjs路徑的一個例子:
this.get('#grid', function(context) {
context.app.swap('');
context = this;
this.load("grid.php",{cache: false}).then(function(items){
require(['knockout','models/gridModel','customBindings'], function(ko, GridModel) {
context.$element().html(items);
var Grid_Model = new GridModel();
ko.applyBindings(Grid_Model);
});
});
});
簡而言之:當用戶導航到「#grid」頁面時,Sammy加載「grid.php」(我的View文件)的內容。然後require.js負責加載所需的模塊(.js文件),當它們都準備就緒時,grid.php的內容將呈現在頁面上,並且應用了挖空綁定。
我真的不知道這是否是更好的方式,但事情對我來說工作很好。
希望這會幫助你,對不起我可怕的英語!
新用戶,請張貼您有問題的代碼片段,以便您獲得適當的幫助。 –
我目前沒有任何有問題的代碼,我只是在尋找關於如何構建這樣的大型應用程序的建議。 – Tim
你有沒有試過看看http://www.knockoutjs.com?特別是互動教程部分? –