在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ 動(dòng)態(tài)加載JavaScript之后再運(yùn)行代碼的問題

動(dòng)態(tài)加載JavaScript之后再運(yùn)行代碼的問題

在某個(gè)頁面需要?jiǎng)討B(tài)加載 jQuery,等到 jQuery 加載完成后再執(zhí)行后續(xù)代碼。但是我不想把后續(xù)代碼放到 ajax 請(qǐng)求的回調(diào)函數(shù)里,因?yàn)楹罄m(xù)代碼有幾千行,而且都是頂層的,我不希望在它們外部加上一層嵌套。求解該如何處理?

if (typeof jQuery === 'undefined') {    fetch('https://code.jquery.com/jquery-2.0.3.min.js', {
            method: 'get'
        })
        .then(function (response) {
            response.text()
                .then(function (data) {
                    let element = document.createElement('script');
                    element.setAttribute('type', 'text/javascript');
                    element.innerHTML = data;
                    document.head.appendChild(element);
                    console.log(typeof jQuery);
                    // 檢查 typeof jQuery 為 function 之后再執(zhí)行外部的代碼。
                });
        });
}

// 外部代碼,如:
console.log('jquery loaded');

ajax 請(qǐng)求可以不用 fetch,但是需要用異步。也可以改成設(shè)置 script 的 src 的方式來加載 jQuery。主要是不讓后面的代碼再加一層嵌套??赡芤菜闶菑?qiáng)迫癥吧,求教~

回答
編輯回答
笑忘初

如果想在你標(biāo)示的外部代碼里寫,那是不可能的。
以前有人也有和你一樣的問題,然后就有了commonjs、requirejs等,現(xiàn)在模塊加載已經(jīng)成了ES6的標(biāo)準(zhǔn)。
所以如果你有強(qiáng)迫癥,那就不能嫌麻煩,把模塊加載相關(guān)的姿勢(shì)擼了吧。

2017年5月13日 21:21