新聞中心
JavaScript有很多庫(kù),每個(gè)人都已經(jīng)對(duì)最重要和最受歡迎的庫(kù)做過(guò)總結(jié),但很快再次迷失。

在羅田等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都做網(wǎng)站、網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作定制制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),網(wǎng)絡(luò)營(yíng)銷推廣,成都外貿(mào)網(wǎng)站建設(shè),羅田網(wǎng)站建設(shè)費(fèi)用合理。
在本文中,小芯將分享3個(gè)鮮為人知但非常強(qiáng)大,且很小的JavaScript庫(kù),這些庫(kù)將使你的生活變得簡(jiǎn)單,也不會(huì)給你的web應(yīng)用程序增加不必要的負(fù)擔(dān)。
1. JS-cookie
OfficialGitHub
在瀏覽器中使用cookies可能會(huì)非常費(fèi)力。JS cookies讓這件事變得簡(jiǎn)單多了,現(xiàn)在我們將學(xué)習(xí)基本知識(shí)。
通過(guò)CDN實(shí)施:
設(shè)置一個(gè)名為“name”的cookie鍵,其值為“Max”
- Cookies.set(‘name’, ‘Max’)
獲取密鑰為“name”的cookie值
- Cookies.get(‘name’) // 'Max'
創(chuàng)建cookie,讓它在7天后過(guò)期
- Cookies.set('name', 'Max', { expires:7 })
刪除cookie
- Cookies.remove(‘name’)
得出所有cookie
- Cookies.get() // { name: 'Max' }
來(lái)源:Pexels
2. Basket.js
OfficialDocumentation
Basket.js是一個(gè)極簡(jiǎn)的腳本加載程序庫(kù),壓縮后只有0.7kB。
(它使用的另一個(gè)庫(kù)壓縮后大約為5kB,如https://github.com/addyosmani/basket.js/issues/61中所述,但仍然很小)
但是basket.js不僅可以加載外部JavaScript,還可以將其緩存在瀏覽器的本地存儲(chǔ)中,這樣在下一頁(yè)請(qǐng)求時(shí),就不必再次通過(guò)網(wǎng)絡(luò)請(qǐng)求外部JavaScript,而只需從本地存儲(chǔ)中加載即可。
但為什么是本地存儲(chǔ)而不是瀏覽器緩存呢?
首先,我個(gè)人認(rèn)為通過(guò)JS庫(kù)在web頁(yè)面代碼中緩存JavaScript文件要容易得多,通常是從服務(wù)器端緩存的。使用Basket.js,很容易在代碼中使用JavaScript動(dòng)態(tài)控制腳本緩存。
我們?cè)囋嚳矗?/p>
實(shí)際的API并沒有那么復(fù)雜。我認(rèn)為你可以自己探索一下文檔,在下面的簡(jiǎn)單示例中,我們只使用basket.require,因?yàn)樗钦麄€(gè)庫(kù)的核心。
- basket.require()
- basket.get()
- basket.remove()
- basket.clear()
使用basket.require,我們可以通過(guò)basket加載JS文件。然后這個(gè)文件被緩存在本地存儲(chǔ)中,正如前文所述,下一次basket.require請(qǐng)求這個(gè)文件,例如,當(dāng)重新加載頁(yè)面時(shí),basket將首先在緩存中查找?;蛘呷绻募呀?jīng)緩存在那里,它將通過(guò)本地存儲(chǔ)加載文件,而不是通過(guò)網(wǎng)絡(luò)再次發(fā)出請(qǐng)求。
index.html:
在這里你可以找到庫(kù):
- https://addyosmani.com/basket.js/dist/basket.min.js
- https://cdn.jsdelivr.net/npm/rsvp@4/dist/rsvp.min.js
- https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js
Document - basket.require({ url:'/scripts/jquery.js' })
如你所見,首先導(dǎo)入Basket.js需要的RSVP庫(kù)。然后回到Basket本身,在body中可以執(zhí)行require函數(shù),從某個(gè)地方加載jQuery。
第一次打開頁(yè)面時(shí),應(yīng)該看到:
jQuery是通過(guò)網(wǎng)絡(luò)正常請(qǐng)求的。
但隨著頁(yè)面的重新加載:
jQuery不再列在Network選項(xiàng)卡中,它是從本地存儲(chǔ)加載。
以上就是整個(gè)“魔法”過(guò)程。
3. Pill
Official Github
“Pill將動(dòng)態(tài)內(nèi)容加載添加到靜態(tài)站點(diǎn),并使內(nèi)容加載更為順暢?!眽嚎s后大約為1KB。
Pill的開發(fā)始于這篇推文:https://twitter.com/sitnikcode/status/1109626507331338240
精髓:大多數(shù)人使用單頁(yè)應(yīng)用程序來(lái)運(yùn)行web應(yīng)用程序,點(diǎn)擊時(shí),不會(huì)加載整個(gè)新頁(yè)面。在大多數(shù)SPA框架中,這是因?yàn)樗袃?nèi)容都基于一個(gè)index.html。
但如果有多個(gè)靜態(tài)頁(yè)面呢?Pill能夠幫你解決。
根據(jù)需要,它將獲取服務(wù)器上其他HTML文件的內(nèi)容,并將當(dāng)前內(nèi)容替換為新的已獲取內(nèi)容。
這是巨大的性能改進(jìn),因?yàn)槲覀兊膽?yīng)用程序不再要求一個(gè)完整的新頁(yè)面。
重要的內(nèi)容剛剛被替換。
使用Pill,能攔截導(dǎo)航嘗試,自動(dòng)完成上述步驟。
Pill最好的一點(diǎn)是,它會(huì)通過(guò)一個(gè)個(gè)示例來(lái)記載,確保檢查所有的東西:你可以在GitHub上找到代碼
(https://GitHub.com/rumkin/pill/tree/master/example)
祝你和Pill合作愉快!
網(wǎng)站名稱:3個(gè)很棒的小眾JavaScript庫(kù),你值得擁有
文章路徑:http://fisionsoft.com.cn/article/dhgghgi.html


咨詢
建站咨詢
