第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何在 Express 應(yīng)用程序中組織客戶端 js?

如何在 Express 應(yīng)用程序中組織客戶端 js?

慕虎7371278 2023-05-19 17:07:45
在我的應(yīng)用程序中,我有大約 10 個(gè)不同的頁面,其中大部分使用某種 JavaScript。app.js目前,我有一個(gè)包含在所有頁面中的客戶端文件。為了弄清楚要在頁面上附加哪些事件偵聽器,我基本上檢查url位置并從那里開始:window.onload = function () {  let urlLocation = window.location.pathname.split('/')[1]  //Global functionality for all pages  UIctrl.toggleActiveNavbar(urlLocation)  //createTopic route  if (urlLocation === 'createTopic' || urlLocation === 'edit') {    UIctrl.createTopicTagsBasedOnCategory()    UIctrl.handleCreateOrEditTopicClick()  }  if (urlLocation === 'editPost' || urlLocation === 'createPost') {    UIctrl.handleCreateOrEditPostClick()  } // .... and so on  }盡管它有效,但我認(rèn)為這不是一個(gè)好方法。如果一個(gè)項(xiàng)目變得足夠大,就很難管理它。我無法找到如何正確執(zhí)行此操作的答案。我的問題是:我應(yīng)該js為每一頁準(zhǔn)備單獨(dú)的文件嗎?我的問題是我必須復(fù)制所有頁面上使用的通用代碼。您是否在您的 express 應(yīng)用程序中使用某種捆綁器(webpack/parcel)來解決這個(gè)問題?也許你可以指點(diǎn)我一個(gè)顯示如何正確設(shè)置它的存儲(chǔ)庫。這在現(xiàn)實(shí)世界的生產(chǎn)環(huán)境中是如何完成的?謝謝。
查看完整描述

1 回答

?
肥皂起泡泡

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超6個(gè)贊

您的直覺是比較 URL 來決定要運(yùn)行的初始化是一種糟糕的編碼方式是正確的。這不是一個(gè)好的模式,隨著越來越多的頁面和維護(hù)隨著時(shí)間的推移會(huì)變得非常痛苦,很快就會(huì)失去控制。

相反,您可以將公共代碼放在每個(gè)頁面都加載的共享 JS 文件中,以便可以根據(jù)需要使用這些功能。然后,在每個(gè)單獨(dú)的頁面內(nèi)使用內(nèi)聯(lián)<script>標(biāo)記來執(zhí)行特定于頁面的初始化,設(shè)置特定于該頁面的事件偵聽器并調(diào)用共享 JS 文件中的代碼。

如果對(duì)于某些頁面,您有很多頁面特定的初始化代碼,您可以只將這些頁面特定的代碼放在頁面特定的 JS 文件中,但通常您不希望每個(gè)頁面都有一個(gè)外部 JS 文件如果可以避免,請(qǐng)?jiān)L問您的頁面。嘗試將大部分代碼放在通用 JS 文件中,然后在每個(gè)特定頁面中只使用一小部分內(nèi)聯(lián)代碼來進(jìn)行正確的初始化。這會(huì)將您的大部分代碼放在一個(gè)通用的共享 JS 文件中,并在特定頁面中保留特定于頁面的初始化邏輯。

每個(gè)頁面都應(yīng)該有單獨(dú)的 js 文件嗎?我的問題是我必須復(fù)制所有頁面上使用的通用代碼。

不。您不想在單獨(dú)的 JS 文件中復(fù)制大量代碼,因?yàn)槟鞘蔷S護(hù)的噩夢(mèng)并且會(huì)破壞有效的瀏覽緩存。


查看完整回答
反對(duì) 回復(fù) 2023-05-19
  • 1 回答
  • 0 關(guān)注
  • 115 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)