本文是按著ng2官網(wǎng)的高級(jí)內(nèi)容“Deployment”的思路整理得出的,原文雖然在angular2的中文站下掛著,截止目前卻還是英文版未翻譯,筆者就在這里結(jié)合自己的理解給出原文的一點(diǎn)點(diǎn)整理。
這是原文地址:
1. 最簡(jiǎn)單的發(fā)布流程
最簡(jiǎn)單指的是開(kāi)發(fā)完成好一個(gè)ng2應(yīng)用后,做最少的事情讓用戶能在自己的瀏覽器內(nèi)訪問(wèn)到此應(yīng)用。從這句話出發(fā)就很容易想到,如何做到“最簡(jiǎn)單”,自然就是什么都不做,把寫好的整個(gè)項(xiàng)目往服務(wù)器一扔搞定。
當(dāng)然,即使是對(duì)項(xiàng)目文件什么都不做,服務(wù)器還是得做一些事情來(lái)配合ng2開(kāi)發(fā)的前后端完全分離的網(wǎng)站:
a. 調(diào)整index.html中的<base />標(biāo)簽的值,因?yàn)樵诜?wù)器中的index.html不一定就在根目錄下,此時(shí)就必須指定其路徑。
b. 調(diào)整404錯(cuò)誤頁(yè),將所有的404錯(cuò)誤都重定向到index.html,只有這樣才能不讓服務(wù)器的路由影響到我們ng2的前端路由(深層原因其實(shí)就是,我們?cè)跒g覽器輸入地址時(shí),地址先被服務(wù)器認(rèn)為是錯(cuò)誤路徑給返回錯(cuò)誤了,這就得讓服務(wù)器認(rèn)為地址有誤時(shí)將其原封不動(dòng)重定向給index.html,讓其成功被客戶端路由識(shí)別)
c. 開(kāi)啟生產(chǎn)模式,ng2默認(rèn)的引導(dǎo)都會(huì)開(kāi)始開(kāi)發(fā)模式,在引導(dǎo)的代碼里執(zhí)行 enableProdMode() 即可開(kāi)啟生產(chǎn)模式
d. 簡(jiǎn)化node_modules。 原因是開(kāi)發(fā)項(xiàng)目時(shí)安裝的那一大堆(20500+的文件以及180M+的大小)npm包,其實(shí)絕大多數(shù)在App運(yùn)行于瀏覽器時(shí)是用不著的,發(fā)布項(xiàng)目時(shí),去掉其中用不著的那一大堆文件,自然能節(jié)省很大的空間。
2. 產(chǎn)品級(jí)優(yōu)化
接下來(lái),為了優(yōu)化我們得產(chǎn)品,還需要做一些事情。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無(wú)線安全]玩轉(zhuǎn)無(wú)線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問(wèn)題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來(lái)看看(二) 2017-07-26