精品日韩在线,日韩精品福利一区二区三区,日韩午夜黄色,国产日韩欧美高清免费

億恩科技有限公司旗下門戶資訊平臺!
服務(wù)器租用 4元建網(wǎng)站

服務(wù)器端生成的 JavaScript 響應(yīng)

Russian Doll-caching, Turbolinks 和 SJR的融合簡直就是一杯難以置信的給力雞尾酒。它可以創(chuàng)造出快速的,現(xiàn)代化的,而且非常優(yōu)美的代碼類的網(wǎng)絡(luò)應(yīng)用,好好享用吧!

Basecamp中的大多數(shù)Ajax操作都是在處理服務(wù)器生成的JavaScript響應(yīng)(SJR)。它的工作原理是這樣的:

表單通過一種XMLHttpRequest驅(qū)動的形式提交。服務(wù)器創(chuàng)建或更新模型對象。服務(wù)器生成包含了針對該模型對象的更新了的HTML模板的一個(gè)JavaScript響應(yīng)。客戶來評估處理由服務(wù)器返回的JavaScript,然后會更新DOM。

這種簡單的模式有一些重要的優(yōu)勢:

1.重用模版而不影響性能

無論是第一次渲染和隨后的模版更新,你都可以重用模版.如果使用Rails,有一部分技術(shù)像郵件/信息用于這兩種情況。

如果你只返回JSON格式的信息,你得用你的模版將展示這些信息兩次(一次是服務(wù)器端的第一次回應(yīng),一次是客戶端隨后的更新)—除非你做一個(gè)單一面頁的JavaScript app,這個(gè)app的第一次回應(yīng)是用JSON/客戶端生成方式。

后面那種方式會很慢,因?yàn)橐日麄€(gè)的Javascript庫load完并在客戶端生成好模版你才能看到效果(這是Twitter早期所用的方式,但隨后被背棄)。但至少在某些情況下這是一個(gè)合理的選擇而且不需要多個(gè)模版。

2.客戶端需要更少的計(jì)算性能

雖然嵌入HTML模板的JavaScript可能造成響應(yīng)數(shù)據(jù)量比JSON格式的響應(yīng)要多(盡管用gzip壓縮后幾乎可以忽略),但是這不需要客戶端去做很多的運(yùn)算來更新頁面。

這意味著,從端到端的觀點(diǎn)出發(fā),處理 JavaScript+HTML的響應(yīng)數(shù)據(jù)的速度,應(yīng)該比處理帶有客戶端模板性質(zhì)的JSON數(shù)據(jù)要快,至于快多少,取決于客戶端模板的復(fù)雜程度,以及客戶端計(jì)算性能。而且這個(gè)速度應(yīng)該是二倍關(guān)系,因?yàn)椋?wù)器生成的模板可以通過緩存在多個(gè)用戶之間共享(詳見 Russian Doll緩存)。

3.容易跟蹤執(zhí)行流

使用SJR會讓跟蹤執(zhí)行流變得非常容易。請求的機(jī)制是標(biāo)準(zhǔn)化的,是會帶有輔助邏輯“l(fā)ikeform_for @post, remote: true”. 當(dāng)然沒有必要對于每個(gè)動作都帶上輔助邏輯。 接著控制器會以渲染完整視圖的方式來渲染響應(yīng)中的部分視圖,其中的目標(biāo)只能是JavaScript 而不是完全的HTML

完整示例

1)首先使用消息模板

<h1>All messages:</h1>

<%# renders messages/_message.html.erb %>

<%= render @messages %>

2) 以Ajax方式提交表單

<% form_for @project.messages.new, remote: true do |form| %>

  ...

  <%= form.submit "Send message" %>

<% end %>

3) 服務(wù)器創(chuàng)建模型對象

class MessagesController < ActionController::Base

  def create

    @message = @project.messages.create!(message_params)

    respond_to do |format|

      format.html { redirect_to @message } # no js fallback

      format.js   # just renders messages/create.js.erb

    end

  end

end

4) 服務(wù)器產(chǎn)生內(nèi)嵌入HTML的JavaScript響應(yīng)

<%# renders messages/_message.html.erb %>

$('#messages').prepend('<%=j render @message %>');

$('#<%= dom_id @message %>').highlight();

最后評估響應(yīng)工作是由form_for產(chǎn)生的XMLHttpRequest-powered表單來自動處理的。視圖因此由于新消息而更新,此外新消息也通過JS/CSS動畫高亮顯示。

超越RJS

當(dāng)我們一開始使用SJR時(shí)我們將它和一個(gè)叫做RJS的前身一起使用,使用RJS你需要寫Ruby模板,然后再將它們轉(zhuǎn)變成JavaScript。它是Coffeescript(或Opalrb,如果你喜歡的話)的簡化版,它錯(cuò)誤地讓許多人舍棄了SJR模式。

現(xiàn)在我們不使用RJS了(更迭的原因通常很簡單——優(yōu)勢不是那么大,只有極少數(shù)情況下才需要的沒有必要那么復(fù)雜),但我們卻一如既往地致力于SJR。

這并不意味著JSON數(shù)據(jù)在服務(wù)器端產(chǎn)生和視圖在客戶端形成的模式一無是處。對于我們的UI需要很高的保真度的時(shí)候,以及像日歷這樣的,有大量的視圖狀態(tài)需要維護(hù)的時(shí)候,這樣的模式還是非常合適的。當(dāng)需要走這條路的時(shí)候,我們使用Sam的卓越 Eco template system (認(rèn)為ERB對于CoffeeScript).

如果你的網(wǎng)絡(luò)應(yīng)用都是高保真度的UI,那么走上面提到的那個(gè)路子是完全沒有問題的。只是你正在花費(fèi)高價(jià)給自己購買些花哨的東西,不過這算是個(gè)問題。但是如果你的應(yīng)用有點(diǎn)像Basecamp或者Github這樣網(wǎng)絡(luò)上的以文本為基礎(chǔ)的主流應(yīng)用,那么你完全應(yīng)該張開雙臂擁抱SJR。

河南億恩科技股份有限公司(www.zuiquanben.com)始創(chuàng)于2000年,專注服務(wù)器托管租用,是國家工信部認(rèn)定的綜合電信服務(wù)運(yùn)營商。億恩為近五十萬的用戶提供服務(wù)器托管、服務(wù)器租用、機(jī)柜租用、云服務(wù)器、網(wǎng)站建設(shè)、網(wǎng)站托管等網(wǎng)絡(luò)基礎(chǔ)服務(wù),另有網(wǎng)總管、名片俠網(wǎng)絡(luò)推廣服務(wù),使得客戶不斷的獲得更大的收益。
服務(wù)器/云主機(jī) 24小時(shí)售后服務(wù)電話:0371-60135900
虛擬主機(jī)/智能建站 24小時(shí)售后服務(wù)電話:0371-55621053
網(wǎng)絡(luò)版權(quán)侵權(quán)舉報(bào)電話:0371-60135995
服務(wù)熱線:0371-60135900

標(biāo)簽 服務(wù)器JavaScript
1
0
分享到:責(zé)任編輯:阿柳

相關(guān)推介

共有:2條評論網(wǎng)友評論:

驗(yàn)證碼 看不清換一張 換一張

親,還沒評論呢!速度搶沙發(fā)吧!
精品日韩在线,日韩精品福利一区二区三区,日韩午夜黄色,国产日韩欧美高清免费
欧美在线黄色| 亚洲图片久久| 18国产精品| 综合一区二区三区| 日韩精品欧美成人高清一区二区| 亚洲欧美在线综合| 亚洲自啪免费| 亚洲精品一二三区区别| 亚洲性图久久| 一区视频在线| 久久xxxx精品视频| 久久亚洲欧美| 日本成人中文字幕在线视频| 国产精品免费99久久久| 精品视频高潮| 91tv亚洲精品香蕉国产一区| 999精品在线| 日韩视频一区| 蜜桃一区二区三区在线| 日本在线不卡视频| 免费亚洲婷婷| 捆绑调教日本一区二区三区| 群体交乱之放荡娇妻一区二区| 欧美精选视频一区二区| 99国产精品久久久久久久| 蜜桃久久精品一区二区| 国产精品夜夜夜| 天堂а√在线最新版中文在线| 国内精品福利| 日韩成人av影视| 精品99在线| 精品一区亚洲| 亚洲青青久久| 精品视频自拍| 99国产精品私拍| 日韩不卡一区二区三区| 美女视频黄久久| 欧美丝袜一区| 日本午夜精品视频在线观看| 色婷婷亚洲mv天堂mv在影片| 婷婷亚洲五月| 国产日产一区| 99久久久久| 日韩精品亚洲一区二区三区免费| 精品国产乱码久久久| 日韩天堂av| 欧美激情麻豆| 在线视频亚洲| 欧美国产视频| 黄色av一区| 国产精品伦一区二区| 久久精品国产68国产精品亚洲| 午夜在线视频观看日韩17c| 国产精品对白| 在线视频亚洲| 欧美国产另类| 国产精品日韩| 成人国产综合| 亚洲精品日本| 久久精品国产68国产精品亚洲| 日本亚洲视频在线| 久久精品国产www456c0m| 日韩精品1区2区3区| 久久中文视频| 国产精品午夜一区二区三区| 亚洲免费成人| 国产一区二区三区免费在线| 99视频精品免费观看| 国产一区二区三区四区大秀| 亚洲精品精选| 精品一区欧美| 久久精品欧洲| 无码日韩精品一区二区免费| 久久久精品网| 久久中文欧美| 日韩一区二区三区在线看| 在线日韩中文| 高清一区二区三区| 日韩精品欧美成人高清一区二区| 91精品亚洲| 成人在线免费观看网站| 日本aⅴ亚洲精品中文乱码| 久久男女视频| 国内在线观看一区二区三区| 日韩在线电影| 国产一级久久| 神马日本精品| 国产福利91精品一区二区| 日本成人手机在线| 噜噜噜躁狠狠躁狠狠精品视频| 都市激情国产精品| 欧美激情三区| 欧美日韩亚洲三区| 日韩综合小视频| 国产一区91| 欧美成人基地| sm久久捆绑调教精品一区| 日韩高清在线一区| 丝瓜av网站精品一区二区| 视频一区二区国产| 国产美女高潮在线观看| 亚洲高清毛片| av高清不卡| 青青青国产精品| 国精品一区二区三区| 日本亚州欧洲精品不卡| 日韩精品欧美激情一区二区| 久久精品国产www456c0m| 日本不卡视频一二三区| 男人操女人的视频在线观看欧美| 久久人人97超碰国产公开结果| 蜜桃av.网站在线观看| 国产福利亚洲| 精品日韩一区| 久久精品青草| 国产激情在线播放| 99成人在线| 久久婷婷国产| 久久久久国产精品一区三寸 | 国产日产精品_国产精品毛片 | 成人在线黄色| 日本视频一区二区| 国产不卡精品在线| 亚洲精品四区| 午夜日韩在线| 亚洲日产国产精品| 蜜桃成人精品| 国产专区一区| 国产伦理久久久久久妇女| 天使萌一区二区三区免费观看| 免费视频一区二区| 青草综合视频| 欧美国产三级| 一区二区三区视频免费观看| 欧美在线综合| 免费欧美在线视频| 麻豆久久久久久| 日韩精品一卡| 蜜桃一区二区三区在线观看| 成人影视亚洲图片在线| 国产一区二区三区四区五区传媒| 99精品电影| 午夜亚洲福利在线老司机| 蜜臀av国产精品久久久久| 国产日韩欧美一区二区三区| 99久久久久国产精品| 伊人久久亚洲热| 青草综合视频| 久久国产免费看| 视频一区欧美精品| 久久精品国产99国产| 国产v日韩v欧美v| 亚洲精品免费观看| 国产色99精品9i| 国产精品久久久久久久免费观看 | 99香蕉国产精品偷在线观看| 日韩网站在线| 日韩激情一区二区| 中文字幕日韩高清在线| 日韩av网站在线观看| 国产精品一二| 欧美日韩精品一区二区三区在线观看| 国产乱码精品| 九九色在线视频| 日本欧美韩国一区三区| 日韩av在线播放网址| 久久免费黄色| 国产日韩中文在线中文字幕| 另类激情亚洲| 亚洲精品**中文毛片| 亚洲日本免费电影| 国产亚洲高清在线观看| 国产欧美久久一区二区三区| 欧美日韩一区二区三区四区在线观看| 国产精品xxx| 播放一区二区| 日本在线成人| 性欧美videohd高精| 婷婷精品在线| 国产精品国产三级国产在线观看| 亚洲欧美日韩精品一区二区| 欧美aaaaaa午夜精品| 国产精品美女久久久浪潮软件| 欧美国产亚洲精品| 丝袜美腿亚洲一区| 日韩综合一区| 日韩精品免费视频人成| 91精品国产调教在线观看 | 欧美精品一区二区久久| 国产精品一区亚洲| 精品91久久久久| 国产一区二区三区四区五区传媒| 午夜一级在线看亚洲| 久久99高清| 亚洲精品乱码| 亚洲第一精品影视| 美女视频免费精品| 亚洲综合欧美| 黄毛片在线观看| 欧美在线看片|