UNPKG

t-comm

Version:

专业、稳定、纯粹的工具库

33 lines (28 loc) 1.01 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var fs_fs = require('../fs/fs.js'); require('fs'); var getComponentNameStr = function getComponentNameStr(componentName) { return "export default {\n name: '".concat(componentName, "',"); }; /** * 为 Vue 组件添加、修正 name 属性 * @param {string} filePath 组件地址 * @param {string} componentName 组件名称 * @returns {string} 新的组件内容 * * @example * ```ts * addNameForComponent('xxx.vue', 'PressUploader'); * ``` */ function addNameForComponent(filePath, componentName) { var content = fs_fs.readFileSync(filePath); var result = content.replace(/export default {(?!\s+name)/, getComponentNameStr(componentName)).replace(/export default {\s+name: '(\w+)',/, function (a, origin) { console.log('[origin] ', origin); return getComponentNameStr(componentName); }); fs_fs.writeFileSync(filePath, result); return result; } exports.addNameForComponent = addNameForComponent;