<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      通過Anuglar Material串串學客戶端開發 - javascript編譯和gulpfile.js

      Angular Material不僅僅有本身框架的源代碼,還有在這個框架上實現的一個應用docs。更為強大的是,這個應用是真正的產品網站:就是它的官網。我有理由相信,這個網站是從源代碼直接發布的,從網址的最后那個/latest,我們可以看出端倪。

      從這個產品本身入手不失為學習的捷徑。

      入口gulpfile.js

      C/C#命令行的應用,我們會尋找Main()方法;C#的Web應用我們會找Global.asax;那么一個NodeJS應用我們就要找gulpfile.js。

      注意:以前的很多項目都是用gruntjs,而近期趨勢是轉向gulpjs,我自己的感覺也是gulpjs很好理解,性能也不錯。

      和前兩個不同的是,gulp.js其實不是應用運行的入口,而是項目編譯的入口。gulp就相當于微軟的MSBuild用來定義編譯任務。

      Javascript也有編譯

      編譯,JS文件還要編譯?是的,如果你對客戶端應用的印象還停留在html文件中直接引用你寫的JS文件,那就已經大大落伍了。至少,很多的javascript的框架項目,如jQuery, AngularJS等等,都有編譯的過程。雖然,這個編譯和我們編譯型語言(如C,C#等)的編譯技術有些不同,但是角色是一樣的:由于編譯過程的存在,使得我們的開發環境和產品環境隔離,這種隔離也是一種解耦。

      編譯即解耦

      解耦帶來的價值就是,我們可以自由安排開發時的文件結構,而不要過多考慮產品文件結構的需求。比如:開發時我們更希望根據模塊和責任的劃分,分別對應不同的文件(文件越多越好),而產品階段,則希望內容集中(文件越少越好)。對應這個情況,javascript就有一個編譯步驟concatenate(合并文件)。從實現技術上看,這沒有什么神奇的東西,但是這完全體現了編譯的本質。

      兩個gulpfile.js文件

      然而,編譯不是Gulp的關鍵詞,Gulp的關鍵詞是任務(task),更多時候我把它和Ant/nAnt對等來看。

      回到Angular Material的源代碼來。我發現它居然有兩個Gulp.js文件。一個在根目錄,另外一個docs/gulpfile.js。從這我在了解到,他其實是兩個項目,一個是material框架,另外一個是它的官網。它兩部分代碼寫到有一個代碼庫,而且因為它官網本身也使用了material框架,甚至有一部分內容都是從框架中自動生成的,也是為什么寫到一個代碼庫的理由。

      然而,兩個編譯文件暴露了它是兩個項目的事實,至少是兩個發布(發布和項目的區別?)。 兩個發布就是兩個產品,又一次印證了編譯是開發和產品的解耦器!

      module.exports

      然而,第二個編譯文件docs/gulpfile.js中卻看到了一個奇怪的東西module.exports = function(gulp, IS_RELEASE_BUILD) {。

      module.exports是什么東西呢?

      posted @ 2015-06-11 12:26  予沁安  閱讀(1199)  評論(4)    收藏  舉報
      主站蜘蛛池模板: 亚洲自拍精品视频在线| 盐亭县| 久久精品国产最新地址| 巨胸美乳无码人妻视频漫画| 亚洲乱码精品久久久久..| 欧美午夜理伦三级在线观看| 亚洲一品道一区二区三区| 国产老熟女狂叫对白| 中文字幕亚洲一区二区三区| 久热这里只有精品6| 国产影片AV级毛片特别刺激 | 熟女性饥渴一区二区三区| 中文字幕久久波多野结衣av| 十八禁午夜福利免费网站| 青草视频在线观看视频| 人妻精品久久无码专区涩涩| 欧美一本大道香蕉综合视频| 亚洲激情av一区二区三区| 日韩A人毛片精品无人区乱码| 99精品久久久久久久婷婷| 国产精品人成视频免| 亚洲AV永久纯肉无码精品动漫| 国产又色又爽又黄的网站免费| 国产精品国产三级国av| 波多野无码中文字幕av专区| 日韩在线观看精品亚洲| 国产成人亚洲精品狼色在线 | 国产欧美日韩高清在线不卡| 狠狠色噜噜狠狠狠狠777米奇| 欧美亚洲h在线一区二区| 一级做a爰片久久毛片下载| 狠狠色丁香婷婷综合尤物| 中文字幕自拍偷拍福利视频| 人人入人人爱| 国产精品无码一区二区牛牛 | 最新国产精品好看的精品| 三台县| 亚洲人成电影网站色| 亚洲精品电影院| 亚洲天堂一区二区成人在线| 成熟了的熟妇毛茸茸|