UNPKG

ibag

Version:

A visual, fast, and customizable front-end scaffolding.

57 lines (53 loc) 1.47 kB
require("module-alias/register"); //注册module-alias const { modify } = require("@/core/config-transform"); const { addStringContext, addFirstLineContext, addItemInPackageJson, } = require("@/core/context-handle"); const npmPackageVersion = require("@/configs/npmPackageVersion"); const addDirGlobalStore = [ "output", [ "src", [ "store", { filename: "index", extension: "js", context: "import Vue from 'vue'\nimport Vuex from 'vuex'\n\nVue.use(Vuex)\n\nexport default new Vuex.Store({\n state: {\n },\n mutations: {\n },\n actions: {\n },\n modules: {\n }\n})\n", }, ], ], ]; /** * 指令【导入vuex】 */ class ImportVuex extends require("./_instruction") { //通过类名,获取到该指令依赖列表文件中到依赖指令 constructor(props) { super(props); this.run(function () { //增加全局store modify(null, addDirGlobalStore); addFirstLineContext( "../output/src/main.js", `import store from './store'\n` ); addStringContext( "../output/src/main.js", `new Vue({`, `right`, `\nstore,\n` ); addItemInPackageJson("devDependencies", { "@vue/cli-plugin-vuex": npmPackageVersion["@vue/cli-plugin-vuex"], }); addItemInPackageJson("dependencies", { vuex: npmPackageVersion["vuex"], }); }); } } module.exports = ImportVuex;