[Vue CLI 3] 配置解析之 parallel

vue

官方文档中介绍过在 vue.config.js 文件中可以配置 parallel,作用如下:

是否为 Babel 或 TypeScript 使用 thread-loader。

该选项在系统的 CPU 有多于一个内核时自动启用,仅作用于生产构建

我们看一下源码部分:

parallel 接受 boolean 值:

parallel: joi.boolean()

默认设置如下:

parallel: hasMultipleCores()

依赖了函数 hasMultipleCores

in some cases cpus() returns undefined, and may simply throw in the future

详情见:https://github.com/nodejs/nod...

通过核心包 oscpus 函数

function hasMultipleCores () {

try {

return require('os').cpus().length > 1

} catch (e) {

return false

}

}

那它会影响什么呢?

babel 部分

在 @vue/cli-plugin-babel/README.md 也提到了:

thread-loader is enabled by default when the machine has more than 1 CPU cores. This can be turned off by setting parallel: false in vue.config.js.

我们来看一下源码:

在线上环境和 vue.config.js 中的配置 parallel

const useThreads = process.env.NODE_ENV === 'production' && options.parallel

然后如果 useThreadstrue,会 use 插件 thread-loader

if (useThreads) {

jsRule

.use('thread-loader')

.loader('thread-loader')

}

所以大家应该知道,如果你在某个项目里面看到 vue.config.js 配置了:

parallel: require('os').cpus().length > 1

其实是多余的,而且不保险

来源:https://segmentfault.com/a/1190000016247395

以上是 [Vue CLI 3] 配置解析之 parallel 的全部内容, 来源链接: utcz.com/z/378065.html

回到顶部