久久久久在线观看_又色又爽又黄的免费视频播放_一区中文字幕_日韩电影在线播放

今日頭條 焦點資訊 營銷之道 企業報道 淘寶運營 網站建設 軟件開發 400電話
  當前位置: 首頁 » 資訊 » 網站建設 » 正文

基于Handlebars的最新版本實現Handlebars的預編譯

放大字體  縮小字體 發布日期:2018-02-18  來源:新格網  作者:新格網  瀏覽次數:914  【去百度看看】
核心提示:今天我們著中講下如何預編譯Handlebars模板,眾所周知,如果在運行時去編譯一些東西是非常影響性能的,Handlebars同樣如此,如果每次都在加載頁面的時候,在js中通過Handlebar.compile(template_source)的話,如果模板簡單就不說了,如果模板非常復雜,夸張點說,讓客戶端的瀏覽器未響應也不是不可能。

至于Handlebars是什么東東,這里就不做過多解釋,可以參照本站課程學習惡補。。。。

Handlebars入門課程傳送門:http://www.gbtags.com/gb/gbliblist/7.htm

今天我們著中講下如何預編譯Handlebars模板,眾所周知,如果在運行時去編譯一些東西是非常影響性能的,Handlebars同樣如此,如果每次都在加載頁面的時候,在js中通過Handlebar.compile(template_source)的話,如果模板簡單就不說了,如果模板非常復雜,夸張點說,讓客戶端的瀏覽器未響應也不是不可能。

好了,閑扯淡到此為止,開始動手。

從Handlebars的官網http://handlebarsjs.com/precompilation.html 我們可以了解到,要實現Handlebars的預編譯非常簡單,只需要通過npm 安裝他的npm包就可以了 npm install -g handlebars  (啥?npm不知道是啥?好吧,自行百度/google) .

這時候,handlebars的模板也不用再像入門教程中寫的那樣通過script標簽嵌在Html的頁面中了,我們需要把對應的模板寫在對應的模板文件里面,handlebars的模板文件就是以.handlebars擴展名結尾的文件。比如有如下文件

sample.handlebars

其內容如下:

<divclass="container">

<divclass="row">

<divclass="col-sm-2">名字

<divclass="col-sm-10">{{name}}

</div>

</div>

Note: 這時候,模板內容就不用再包含在script標簽中了。

然后只要在命令行如下命令即可 handlebars sample.handlebars -m -f  sample.hbs.js

這里我們對handlebars的命令做下簡單的介紹,具體的可以參考github上的 https://github.com/wycats/handlebars.js/  

Precompiling Templates

sample.handlebars 是輸入源 文件,也就是我們寫的模板文件

-m  參數是把預編譯后壓縮文件

-f   制定輸出文件路徑

sample.hbs.js  就是-f參數制定的輸出文件

到此,Handlebars的預編譯過程就完成了,我們可以通過在html中引入handlebars.js 和預編譯后的sample.hbs.js我們就可以盡情的使用預編譯后的模板了!!!!

那到底怎么使用這個預編譯后的模板呢?

要想清楚怎么使用,我們就應該先了解這個預編譯到底做了什么,其實也沒有什么神秘的,預編譯就是在Handlebars這個對象的templates對象中加入了我們編寫的sample.handlebars文件同名的一個對象,這樣我們就可以再我們的代碼中通過Handlebars.templates.sample(contex,options)來調用我們定義的模板了。

到此這篇文章本來就可以結束了,但是,我們上面引用的是handlebars.js這個文件,這個文件未壓縮的情況下有140K,官方給出了另外一個可以進一步節約帶寬,而且更加適合移動端加載的方案,那就是使用體積更小的runtime文件,也就是handlebar.runtime.js這個文件,這個文件在未壓縮的情況下也只有24K,但是官方并沒有給出這個文件,需要我們自行build handlebars的工程來獲得。

查看gibhub上Handlebars的工程結構我們可以了解到,他的工程是通過node+grunt來構建的,這樣我們就只需要通過grunt 命令來build下就可以了。(啥?node和grunt不知為何物?好吧,百度/google自行學習之)

1. 首先從github上把handlebars的工程check out出來,這個就不多說了

2. 在檢出的工程更目錄下打開命令行 執行npm install 這個就是把配置在package.json中的依賴下載到工程中

3. 上述工作完成后,我們可以檢查下Gruntfile.js中有哪些task,當然我們的目標是去查找有沒有build這樣的task, 找到后,在命令行中輸入grunt build ,當看到Done ... 這樣的字樣時,OK, 大功告成!

4. 編譯結束后,我們就可以再dest 目錄中看到handlebars.runtime.js這個文件了。

好了,得到runtime文件后,我們就可以替換上面中的handlebars.js了。

至此完美收筆。

尊重筆者知識,轉載請注明出處:http://www.gbtags.com/gb/share/5764.htm 

 
 
[ 資訊搜索 ]  [ 加入收藏 ]  [ 告訴好友 ]  [ 打印本文 ]  [ 違規舉報 ]  [ 關閉窗口 ]

 
0條 [查看全部]  相關評論

 
網站首頁 | 關于我們 | 聯系方式 | 使用協議 | 版權隱私 | 網站地圖 | 排名推廣 | 廣告服務 | 積分換禮 | 網站留言 | RSS訂閱 | 吉ICP備11001726號-6
企業800網 · 提供技術支持