懒加载(延迟加载)

yarn add @babel/plugin-syntax-dynamic-import -D

source.js

export default 'mayufo'

index.js

let button = document.createElement('button')

button.innerHTML = 'may'
button.addEventListener('click', function () {
    console.log('click')
    // es6草案中的语法,jsonp实现动态加载文件
    import('./source.js').then(data => {
        console.log(data.default);
    })
})


document.body.appendChild(button)

webpack.config.js

{
    test: /\.js$/,
    exclude: '/node_modules/',
    include: path.resolve('src'),
    use: [{
        loader: 'babel-loader',
        options: {
            presets: [
                '@babel/preset-env',
                '@babel/preset-react'
            ],
            plugins: [
                '@babel/plugin-syntax-dynamic-import'
            ]
        }
    }]
}

results matching ""

    No results matching ""