动态修改manifest.json
1.使用递归的方式实现数组、对象的深拷贝2.js获取url的参数3.弹框组件el-tree+vue3必坑指南4.在Vue 3中,与Vue 2相比,有一些改进和优化的diff算法。5.浏览器解析html6.浏览器渲染HTML7.Object.entries()8.vue实现虚拟dom转换成真是dom的原理9.全局封装组件处理并发请求不连续的loading10.为什么vue数组下标修改监听不到11.vue里表单验证的v-model.number的坑12.有意思的css13.js原生语音转文字14.js手写一个call15.js手写一个apply16. 手写一个 bind 方法17.js寄生组合式继承18.react中的useState修改状态获取最新状态值19.函数柯里化js20.axios请求中断_下载中断和下载进度21.axios请求重试_核心原理22.axios请求重试_axios-retry插件23.虚拟列表-渲染 10 万条数据24.vue-office 组件25.threejs26.把原生 DOM 标签转换后加入到 3D 场景空间中显示27.three.js 物体要使用光线投射技术,计算是否点击位置与物体有交叉28.threejs基本函数29.二分查找算法30.js判断字符串是否连贯31.世界坐标系和模型坐标系32.设置车模型中每个小物体 castShadow = true33.Vue3 echarts 组件化使用 resizeObserver34.网页验证码的作用 *网页中几种常见验证码35.多个装饰器一起es6装饰器36.flex属性37.移动端兼容问题38.那什么是URL、URI、URN?39.threejs的坐标渲染和着色40.着色器41.基于 three.js 加载器分别加载模型42.echarts自适应大屏方案 亲测有用43.有趣的工具44.关于threejs中鼠标左右移动,左动看右边,右动看左边45.有趣的知识点threejs46.uniapp底层跨端原理47.防止XSS(跨站脚本攻击)漏洞48.启动vite和electron项目配置多个主进程49.margin-bottom:-1px无效的问题50.九宫格css51.css伪类选择器52.uniapp关于uni.getUserProfile的使用53.uniapp获取用户信息54.在项目中使用UEditor碰到的几个问题55.一维数组转二位数组56.使用此函数对数组进行分块,并在最后一组添加特定的值57.如果win报错无法加载文件 C:\Users\xx\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运行脚本58.阅读时间缓存(快应用)59.uniapp中OnShow获取缓存60.之前使用抖音的担保支付,后俩转换成通用的交易方式61.width:100%与width:auto区别62.leetcode1047字符串反复去重(栈)63.由于<textarea>在某些平台上会创建一个原生控件,这可能会导致层级问题,尤其是在安卓设备上。在uni-app中,对于这种情况,通常推荐的解决方案是使用<cover-view>组件来覆盖原生组件,但是这种做法通常用于覆盖地图、视频等原生组件,而不是<textarea>64.记录一次uniapp使用scrollview65.微前端(矩阵项目)代码将单个文件合并到指定分支66.推荐一个炫酷爆炸例子67.思维导图推荐包68.自适应高度的过渡69.自定义滚动条边角70.实现下划线动画71.js不同类型比较72.css73.sse74.ECMAScript 语言规范每年都会进行一次更新,而备受期待的 ECMAScript 2024 将于 2024 年 6 月正式亮相。目前,ECMAScript 2024 的候选版本已经发布,为我们带来了一系列实用的新功能。75.前端scale负数表示翻转76.关于小说阅读前端翻页插件推荐turn.js77.数组扁平化78.Vue-Plugin-HiPrint79.好玩的vue组件80.DOMRect对象81.js中关于return和if条件处理82.关于文心一言不能打开F12开发者工具83.js文字处理两端展示中间省略号84.[popover, select] el-popover内有select的时候在选择后会自动关闭85.说一下flex的属性86.vue3中404路由匹配规则87.shape-outside88.createRange表示文档中的一个范围——用于js判断文字添加省略号情况89.uniapp+vue3 使用list触底+下拉90.diff算法vue
91.动态修改manifest.json
92.记录一下大小写导致的问题93.微信小程序关于小说类使用官方阅读器94.VS Code侧边栏的“资源管理器”丢了95.nestjs中服务引入控制器和模块的作用点击查看代码
// h5开发环境
const h5Dev = {
baseUrl: 'https://devh5.....'
}
// h5测试环境
const h5Test= {
baseUrl: 'https://testh5.....'
}
// h5生产环境
const h5Prod= {
baseUrl: 'https://prodh5.....'
}
// 微信小程序开发环境
const mpWeixinDev = {
baseUrl: 'https://devwx.....'
}
// 微信小程序测试环境
const mpWeixinTest= {
baseUrl: 'https://testwx.....'
}
// 微信小程序生产环境
const mpWeixinProd= {
baseUrl: 'https://productionwx.....'
}
// app开发环境
const appDev = {
baseUrl: 'https://devApp.....'
}
// app测试环境
const appTest= {
baseUrl: 'https://testApp.....'
}
// app生产环境
const appProd= {
baseUrl: 'https://productionApp.....'
}
const envConfig = {
'h5-dev':h5Dev,
'h5-test':h5Test,
'h5-prod':h5Prod,
'mp-weixin-dev':mpWeixinDev,
'mp-weixin-test':mpWeixinTest,
'mp-weixin-prod':mpWeixinProd,
'app-dev':appDev,
'app-test':appTest,
'app-prod':appProd,
}
module.exports=envConfig
const fs = require('fs')
//自定义的环境变量根据实际对应路径引入
const envConfig=require('./config/env.js')
//读取manifest.json内容
fs.readFile(`${__dirname}/manifest.json`, (error, res)=> {
if (!error) {
let data = JSON.parse(res.toString());
//此时process.env.ENV_TYPE依然无法读取到但是可以读取process.env.UNI_SCRIPT,该值为自定义编译平台配置字段名称,这就是上面取字段时候要求和自定义编译平台字段一样原因
let env =process.env.UNI_SCRIPT
if (env&&env.includes('h5')) {
if ( data?.h5?.devServer?.proxy) {
let proxy= data.h5.devServer.proxy
for (let key in proxy) {
proxy[key].target =envConfig[env].baseUrl
}
// console.log(JSON.stringify(data.h5),'proxy')
//重新写入修改后内容
fs.writeFile(
`${__dirname}/manifest.json`,
JSON.stringify(data),
{
encoding: 'utf-8'
},
(error)=>{
if (error) {
console.log(error,'修改失败')
} else {
console.log('修改成功')
}
}
)
}
}
}
})
2.vue.config.js引入modifyManifest.js
vue.config.js(没有该文件新建,位于项目根目录)新增:
注意:兼容性写法此处用require非import
至此,每次通过运行-编译不同的环境,编辑器会动态修改manifest.json-target值,代理指向对应的环境
本文来自博客园,作者:jialiangzai,转载请注明原文链接:https://www.cnblogs.com/zsnhweb/p/18080653
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!