@dao-style/vue-cli-plugin-shared-utils
v0.1.0
Published
封装了一些用于写文件的操作
Downloads
53
Keywords
Readme
Intro
封装了一些用于写文件的操作
mainInit
用于检测是否存在 plugin,如果不存在,则确定为未初始化的环境,进行 entryFile 的覆盖行为
const mainInit = require("@dao-style/vue-cli-plugin-shared-utils/lib/mainInit");
mainInit(api) // api => generator api
mainImportInit
合并 mainInit 的功能
/**
* 在 main.[t|j]s 中进行注入,如果不存,则创建并注入
* @param {api} api
* @param {string} importFrom: import xxx from '\<importFrom\>';
* @param {string} defaultImport: import \<defaultImport\> from '\<importFrom\>';
* @param {string[]} importList: import \<defaultImport\>, { ...\<importList\> } from '\<importFrom\>';
* @param {string} usedName: app.use
*/
如 plugin 初始化的时候会自动调用该方法,进行创建注入,在 entryFile 中写入 import 与 app.use 的行为
const mainImportInit = require("@dao-style/vue-cli-plugin-shared-utils/lib/mainImportInit");
mainImportInit(api, './plugins', 'pluginInstall', [], 'pluginInstall') // api => generator api
pluginInit
用于检测是否存在 plugin,如果不存在,则确定为未初始化的环境,进行 plugins 目录的创建与启动 mainImportInit
const pluginInit = require("@dao-style/vue-cli-plugin-shared-utils/lib/pluginInit");
pluginInit(api) // api => generator api
pluginImportInit
合并 pluginInit 的行为,用于在 plugins/index 中写入 import 与 export 并在 installl function 中对 plugin 进行安装行为,因此作为方法接受的参数列表如下:
/**
* 在 plugins/index 中进行注入,如果不存,则创建并注入
* @param {api} api
* @param {string} importFrom: import xxx from '\<importFrom\>';
* @param {string} defaultImport: import \<defaultImport\> from '\<importFrom\>';
* @param {string[]} importList: import \<defaultImport\>, { ...\<importList\> } from '\<importFrom\>';
*/
const pluginImportInit = require("@dao-style/vue-cli-plugin-shared-utils/lib/pluginImportInit");
pluginImportInit(api, './vue-i18n', 'i18nInstall', ['loadLanguageAsync']) // api => generator api
如上面进行书写会在 plugins/index 进行以下修改
import i18nInstall, { loadLanguageAsync } from './vue-i18n';
// 原本就有
export default function install(app) {
...
app.use(i18nInstall);
// 原本就有
}
// 原本就有
export {
...,
loadLanguageAsync,
// 原本就有
}
utils
生成一条 import 语句 genImport
生成一条具名导出的表达式 genNamedExport
判断某个 目录/文件 是否存在 isTargetExist
检测 src/plugins
目录是否存在
checkPluginExist