ClientDynamicModulesOption
动态将plugin
插件写入到temp
文件中去,这里的动态是指一个动态的文件,包含了整个文件的内容,放到temp
里面去。这样的好处是将一些node_module
里面的文件引入到外部最终webpack
可以解析并打印。还有一个官方的使用解析
module.exports = class ClientDynamicModulesOption extends AsyncOption {
async apply(ctx) {
await super.asyncApply();
for (const { value, name: pluginName } of this.appliedItems) {
const { name, content, dirname = "dynamic" } = value;
await ctx.writeTemp(
`${dirname}/${name}`,
`
/**
* Generated by "${pluginName}"
*/
${content}\n\n
`.trim()
);
}
}
};
在.temp
中写入文件,默认输出
name:siteData.js
name:routes.js
name:root-mixins.js
name:layout-components.js
name:page-components.js
name:ClientComputedMixin.js
默认注释
/**
* Generated by "@vuepress/internal-layout-components"
*/