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

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

如何使用es6的動(dòng)態(tài)導(dǎo)入從靜態(tài)導(dǎo)入模塊?

如何使用es6的動(dòng)態(tài)導(dǎo)入從靜態(tài)導(dǎo)入模塊?

SMILET 2021-12-02 16:30:55
我正在嘗試將動(dòng)態(tài)導(dǎo)入添加到我的代碼中,以便在客戶端獲得更好的性能。所以我有一個(gè) webpack 配置,其中捆綁了 js 文件。在 SFCC 上,捆綁文件位于靜態(tài)文件夾中,其中該文件的路徑如下所示:/en/v1569517927607/js/app.js)我有一個(gè)函數(shù),當(dāng)用戶單擊按鈕時(shí),我使用 es6 的動(dòng)態(tài)導(dǎo)入來(lái)調(diào)用模塊。問(wèn)題是當(dāng)我們調(diào)用那個(gè)模塊時(shí),瀏覽器找不到它,因?yàn)槁窂藉e(cuò)誤。/en/lazyLoad.js net::ERR_ABORTED 404 (Not Found)這是正常的,因?yàn)槲募挥?en/v1569517927607/js/lazyLoad.js.有沒(méi)有辦法從正確的路徑得到它?這是我的代碼。window.onload = () => {    const lazyAlertBtn = document.querySelector("#lazyLoad");    lazyAlertBtn.addEventListener("click", () => {        import(/* webpackChunkName: "lazyLoad" */ '../modules/lazyLoad').then(module => {            module.lazyLoad();        });    });};
查看完整描述

3 回答

?
紅顏莎娜

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

我遇到了同樣的問(wèn)題,并使用 Business Manager 中的 Merchant Tools > SEO > Dynamic Mapping 模塊解決了它。


在那里,您可以使用如下規(guī)則將請(qǐng)求重定向到靜態(tài)文件夾:


**/*.bundle.js i s,,,,,/js/{0}.bundle.js

我所有的塊文件都以<module>.bundle模式命名。


在這里您可以找到更多信息:https :

//documentation.b2c.commercecloud.salesforce.com/DOC1/topic/com.demandware.dochelp/content/b2c_commerce/topics/search_engine_optimization/b2c_dynamic_mappings.html


希望這可以幫助。


查看完整回答
反對(duì) 回復(fù) 2021-12-02
?
蕪湖不蕪

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

我相信你可能需要path.resolve()在你的導(dǎo)入語(yǔ)句或webpack.config.js文件中做一些魔法

查看完整回答
反對(duì) 回復(fù) 2021-12-02
?
LEATH

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

我們以不同的方式做到了。這需要兩個(gè)步驟


從模板文件中添加一個(gè)腳本標(biāo)記,為靜態(tài)路徑創(chuàng)建一個(gè)全局變量。就像是

// inside .isml template

<script>

    // help webpack know about the path of js scripts -> used for lazy loading

    window.__staticPath__ = "${URLUtils.httpsStatic('/')}";

</script>

然后你需要通過(guò)__webpack_public_path__在運(yùn)行時(shí)更改來(lái)指示 webpack 知道在哪里可以找到塊

// somewhere in your main .js file

// eslint-disable-next-line

__webpack_public_path__ = window.__staticPath__ + 'js/';

可選步驟:


您可能還想從__staticPath__使用替換中刪除代碼版本(至少我們必須這樣做)


__webpack_public_path__ = window.__staticPath__.replace('{YOUR_CODE_VERSION_GOES_HERE}', '') + 'js/';


查看完整回答
反對(duì) 回復(fù) 2021-12-02
  • 3 回答
  • 0 關(guān)注
  • 385 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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