使用npm运行js脚本覆盖vue依赖包

// scripts/replace-components.js

// eslint-disable-next-line @typescript-eslint/no-var-requires

const fs = require('fs-extra')

const path = require('path')

const replacements = {

// 源文件(你的组件): 目标文件(node_modules中的组件)

'./src/components/CustomTable.vue': './node_modules/some-package/src/Table.vue',

'./src/components/CustomForm.vue': './node_modules/some-package/src/Form.vue'

}

function replaceComponents() {

Object.entries(replacements).forEach(([src, dest]) => {

const srcPath = path.resolve(__dirname, '...', src)

const destPath = path.resolve(__dirname, '...', dest)

复制代码
if (fs.existsSync(srcPath)) {
  // 确保目标目录存在
  fs.ensureDirSync(path.dirname(destPath))
  // 复制文件
  fs.copySync(srcPath, destPath)
  console.log(`✅ 已替换: ${dest}`)
} else {
  console.log(`❌ 源文件不存在: ${src}`)
}

})

}

replaceComponents()

相关推荐
暗冰ཏོ11 小时前
VUE面试题大全
前端·javascript·vue.js·面试
豹哥学前端14 小时前
事件循环(Event Loop)深度解析:让你彻底搞懂 JS 的执行顺序
前端·javascript·面试
竹林81814 小时前
用 wagmi v2 + Next.js 14 搞 NFT 交易市场前端:从合约调用失败到顺利上架,我踩了哪些坑
javascript·next.js
前端不开发14 小时前
用一个 Bookmarklet(书签脚本),给任意网页挂一个可拖拽悬浮窗
前端·javascript
接着奏乐接着舞14 小时前
【无标题】
开发语言·前端·javascript
雨雨雨雨雨别下啦14 小时前
心理健康AI助手 - 项目总结
前端·javascript·vue.js·人工智能·信息可视化
风之舞_yjf14 小时前
Vue基础(32)_TodoList案例
前端·javascript·vue.js
Amos_Web16 小时前
Rspack 源码解析 (2) —— 从 rspack build 到输出 dist,完整编译链路详解
前端·javascript
张元清16 小时前
Ref 逃生舱:用 React Hook 解决闭包陈旧、回调身份不稳和强制更新
前端·javascript·面试
之歆18 小时前
DAY_13DOM操作完全指南DOM基础API与节点操作(上)
开发语言·前端·javascript·ecmascript