以lodash為例,用groupBy函數(shù)
let test = "A1,B1,C1,C2,B2,A2,D1,D2,D3";
let result = _.groupBy(test.split(','), item => item[0]);
console.log(result);
//結(jié)果
A: (2) ["A1", "A2"]
B: (2) ["B1", "B2"]
C: (2) ["C1", "C2"]
D: (3) ["D1", "D2", "D3"]服務(wù)端渲染應(yīng)用部署:是每次請求經(jīng)過服務(wù)器,查詢數(shù)據(jù)庫或接口,渲染模板后返回html,算是動(dòng)態(tài)渲染的;靜態(tài)部署: 是預(yù)先將所有路由頁面處理后,生成靜態(tài)的html,是一個(gè)完全不需要服務(wù)器的靜態(tài)網(wǎng)站了。
不是替換為src,而是使用.attr()為dom元素添加src屬性,你要先獲取data-src這個(gè)自定義數(shù)據(jù)屬性,然后賦值給添加的屬性src。最終體現(xiàn)在代碼上很簡單:$('.demo').attr('src', $('.demo').attr('data-src'))。你可以參考一下這篇文章理解一下attr,和自定義數(shù)據(jù)屬性
之前用淘寶flexible在ios端出現(xiàn)過問題,解決方法是把他的東西下載下本地。
不知道對這個(gè)問題有沒有用
我和你認(rèn)為的一樣
那種小頁面,簡單的項(xiàng)目
直接引入vue.js單文件就好
匹配 -.*+?^${}()|[]/\這些字符的吧
Phantomjs 你值得擁有
是.babelrc文件出錯(cuò)了。
["import", { "libraryName": "antd", "style": true }]
style得改成true,你的style應(yīng)該寫的是css吧
在這里改動(dòng)就可以了
解決了,刪除指定包然后重新 require 一次
估計(jì)是開始時(shí)用的源不同導(dǎo)致的沖突出現(xiàn)的問題
好吧,我知道了,F(xiàn)n功能鍵+F5
單頁面應(yīng)用應(yīng)該放到nginx或者apache、tomcat等web代理服務(wù)器中。
應(yīng)該是這個(gè)組件的:active選擇器設(shè)置了outline屬性,再寫一個(gè)把這個(gè)覆蓋就好了,:active {outline:none}
逐個(gè)交流下
1、按照上面的說明,現(xiàn)在所有的組件都分開打包了,其實(shí)只是用到了壓縮,其實(shí)這樣還是不夠理想的,有些組件可能只有幾k甚至更小,導(dǎo)致請求非常多。那么該如何設(shè)定這個(gè)分界點(diǎn)呢?什么樣的打包到一起?什么樣的分開打包?一個(gè)文件大概多大合適?
按需加載的分界的確不太好確定,我一般的判斷準(zhǔn)則是:當(dāng)我處于當(dāng)前路由時(shí),是否需要其他路由的視圖組件和局部組件。比如這里為了做優(yōu)化,我會(huì)將Menu1和Menu1兩個(gè)從路由視圖組件級別上就先做一個(gè)按需加載的分割。題主對所有的引用模塊都使用
require.ensure(),它的結(jié)果只是說將這些按需模塊單獨(dú)抽出成一個(gè)個(gè)小的chunk塊,一多反而多了一堆請求了,得不償失。很多子chunk塊之間,其實(shí)功能是關(guān)聯(lián)的,本來就不需要各自按需,所以還是分界點(diǎn)問題。總之就是當(dāng)前主業(yè)務(wù)邏輯用的到的,都應(yīng)該初始打包在一起,需要條件再觸發(fā)的局部組件才按需加載。盡量以一組功能塊為原則,將組件模塊打包在一起。
分界點(diǎn)其實(shí)我也給不了什么好建議,可能更多的是看經(jīng)驗(yàn)。一個(gè)文件沒有多大才合適,我也給不了答案。不過提供兩個(gè)插件,題主可以看看
MinChunkSizePlugin和LimitChunkCountPlugin
2、require.ensure()方法,第三個(gè)參數(shù)相同的組件可以打包到一起,但是這樣感覺太不方便了,假設(shè)paage頁面用到了分頁組件,并取名(提供第三個(gè)參數(shù)),那么其他的頁面在引用的時(shí)候也需要使用該名字,這樣如果項(xiàng)目大,就會(huì)非常麻煩,需要的名字太多了,改如何組織打包呢?
我當(dāng)時(shí)也用過以
group的形式成組打包,使用group的方式可以減緩按需加載粒度太細(xì)產(chǎn)生多余的請求和網(wǎng)絡(luò)不穩(wěn)定而產(chǎn)生的延遲等待。我當(dāng)時(shí)的group形式打包,我是按照如下策略的方式組織的。
- 將所有可能初次就進(jìn)入的頁面打包在一起(比如首頁、用戶最喜歡分享的頁面等等)
- 將用戶在1的基礎(chǔ)上,最容易被引導(dǎo)去點(diǎn)擊的頁面
- 其余的路由頁
- 錯(cuò)誤頁
3、把第三方組件分開打包,確保每次打包的名稱都不變化,這樣就能利用緩存了,因?yàn)橐玫牡谌綆烊绻姹静蛔?,?nèi)容就不變,所以不需要每次都改名、打包發(fā)布。
官方提供了兩個(gè)插件,來解決此問題
- NamedModulesPlugin - 建議開發(fā)環(huán)境使用
- HashedModuleIdsPlugin - 建議生產(chǎn)環(huán)境使用
報(bào)錯(cuò)內(nèi)容,由于線索太少,分析不出來,不過可以看看你的WDS是不是設(shè)置了inline:false
就是反映到html上,可以通過outerHTML讀取出來。
比如<input disabled />input是禁用狀態(tài)
<input id="i" /> document.getElementById('i).disabled=true 這種并不影響<input id="i" />的html
你這樣想
setTimeout(fn, 100)
fn是定義的一個(gè)函數(shù),它是隔了100毫秒才執(zhí)行
但是如果你寫成 setTimeout(fn(), 100) 這是函數(shù)自調(diào)用,fn函數(shù)會(huì)立即執(zhí)行,
隔了100毫秒,才會(huì)執(zhí)行fn return后的函數(shù)
因?yàn)槟銢]user.save()呀
因?yàn)榧热挥忻黠@邊界了,就說明你不想讓它們合并了
https://developer.mozilla.org...
原因是split在處理含有捕獲組的正則的時(shí)候,會(huì)把捕獲組里面捕獲到的數(shù)據(jù)也當(dāng)做分割后結(jié)果的一部分。如下:
代碼如下:
var str="abclskd,jsldk-lskdfj778,jsdkf*jdkf";
var regex1=/[,*-]/;
str.split(regex1);
(5) ["abclskd", "jsldk", "lskdfj778", "jsdkf", "jdkf"]
var regex2=/([,*-])/;
str.split(regex2);
(9) ["abclskd", ",", "jsldk", "-", "lskdfj778", ",", "jsdkf", "*", "jdkf"]
var regex3=/(?:[,*-])/;
str.split(regex3);
(5) ["abclskd", "jsldk", "lskdfj778", "jsdkf", "jdkf"]
所以,為了不出現(xiàn)這樣的結(jié)果,你把()改為(?:)
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國制造2025”,實(shí)現(xiàn)中華民族偉大復(fù)興的升級產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項(xiàng)目經(jīng)理從事移動(dòng)互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團(tuán)項(xiàng)目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺(tái)面向?qū)ο箝_發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。