1.1.0 • Published 3 years ago

react-asyncmodule-tool v1.1.0

Weekly downloads
159
License
-
Repository
github
Last release
3 years ago

react-asyncmodule-tool

react-asyncmodule related method.

Installation

npm install react-asyncmodule-tool

Es6 used.

import {
    createCollect,
    createAssets,
    getChunkAssets
} from 'react-asyncmodule-tool';

API

createCollect(options)

options的属性

NameTypeDefaultDescription
chunkNamestring or array-必填,当前 chunk 的名称,根据该值获取对应的资源文件
statsobject-必填,webpack 构建生成的 stats
entrypointsstring or array工程的 entry入口文件
asyncChunkKeystring-client 端获取依赖 chunk 的 domid
runtimeNamestring or array'runtime'从入口文件分离出的 runtime js文件
const collect = createCollect({
    stats,
    chunkName: 'home'
});

collect.getScripts(); // 返回 chunk 所需的脚本,含 async
collect.getStyles(); // 返回 chunk 所需的样式
collect.getInlineStyles().then((data) => { // 返回内联的样式
    console.log(data);
});

runtimeName一般不需要配置,使用默认值即可,如果有修改,则需要传入对应的 runtimeChunk 的名称,有多个 runtimeChunk 则传入数组,具体说明详见webpack runtime

createAssets(chunks, publicPath)

Serialized resource path based on the webpack's chunks

const assets = createAssets(stats);
// output
{
    a: {
        js: ['/public/a.js'],
        css: ['/public/a.css']
    },
    b: {
        js: ['/public/common.js', '/public/b.js'],
        css: ['/public/common.css', '/public/b.css']
    }
}

getChunkAssets(assets, chunkName)

Output chunkNames according to matchRoutes.

getChunkAssets({
   a: {
       js: ['/public/a.js'],
       css: ['/public/a.css']
   },
   b: {
       js: ['/public/common.js', '/public/b.js'],
       css: ['/public/common.css', '/public/b.css']
   }
}, 'a');

// output

{
   js: '<script type="text/javascript" src="/public/a.js"></script>',
   css: '<link href="/public/a.css" rel="stylesheet">'
}
1.2.0-beta.6

3 years ago

1.2.0-beta.5

3 years ago

1.2.0-beta.4

3 years ago

1.2.0-beta.3

3 years ago

1.2.0-beta.2

3 years ago

1.2.0-beta.1

3 years ago

1.2.0-beta.0

3 years ago

1.2.0-alpha.5

4 years ago

1.2.0-alpha.4

4 years ago

1.2.0-alpha.3

4 years ago

1.2.0-alpha.2

4 years ago

1.2.0-alpha.1

4 years ago

1.2.0-alpha.0

4 years ago

1.1.0

4 years ago

1.1.0-alpha.2

4 years ago

1.1.0-alpha.1

4 years ago

1.1.0-alpha.0

4 years ago

1.0.0

5 years ago

0.1.2

6 years ago

0.1.1

6 years ago

0.1.0

6 years ago