為什麼不用js去渲染頁面?
用js去渲染頁面,伺服器只提供資料。 那麼頁面都可以是靜態的html檔案。 通過ajax獲取資料。然後js去渲染。 這樣不是很和諧麼?
而且好處也很多。首先頁面只包含模板,靜態化有助於各級快取。
其次js 渲染簡單方便。分擔伺服器渲染的計算量。
伺服器程式實現簡單只提供資料。
畫個流程吧:
client ---------------------- > server
<------- html模板 + js
ajax ------------->
<------------json 資料
然後:
js 把json資料 填充 html 模板 -----> 瀏覽器解析渲染畫到螢幕上
我指的就是js 填充 html模板這一過程.
我覺得 唯一不好的是搜尋引擎不知道支援不支援這種頁面了。
可是奇怪的是雖然有很多js渲染庫 。有的橫方便而且超簡單 。但是各個**並沒有使用這些技術。請問只是為啥。僅僅是對搜尋引擎不友好麼?
自己照著tempo.js寫了乙個用於 js模板渲染的函式。
function render(id, data, insert);
var t = render.__t[id];
dom = document.getelementbyid(id);
if(!dom) return;
if(!t))#/gmi, "'+data[\"$1\"]+'");
html = ["return '", html ,"';"].join('');
t = new function('data',html);
render.__t[id] = t;
dom.innerhtml = '';
} if(!t) return;
var ret = '';
if(data.length);
render('***',obj);
搞定 。 如果穿進去乙個list 。就會渲染出一串。
做了乙個例子 渲染sohu微博頁面的.
開啟頁面直接看原始碼. 渲染速度沒問題 .
實現有兩種方式,
1 把生成的json資料放到頁面裡 直接帶過來.(不知道這樣對 seo支援的怎麼樣?)
2 用ajax去獲得.
為什麼不用Dojo?
不用dojo,原因可能有很多,但是主要的就是 2.dojo的外觀精細度遠不如extjs,extjs的操作更windows一些。3.dijit的widget不如extjs的功能多,使用dojo很多時候你不得不自己編制乙個擴充套件widget。可能更多的原因,還是比較喜歡 拿來就用 不喜歡自己程式設計。...
為什麼我寫的page頁面無法渲染
場景 有使用者使用tiny框架開發page頁面,但是訪問頁面發生 白板 什麼內容也沒有渲染出來。經過 審核,發現他的page頁面寫法是正確的,但是layout檔案內容為空,缺少 佔位符,這樣會導致模板引擎找不到而渲染失敗。對於tiny框架而言,一定要有乙個預設的default.layout檔案,la...
為什麼我寫的page頁面無法渲染
場景 有使用者使用tiny框架開發page頁面,但是訪問頁面發生 白板 什麼內容也沒有渲染出來。經過 審核,發現他的page頁面寫法是正確的,但是layout檔案內容為空,缺少 佔位符,這樣會導致模板引擎找不到而渲染失敗。對於tiny框架而言,一定要有乙個預設的default.layout檔案,la...