痛点

在多个小程序多个环境下开发,频繁切换,有时候还记不住Appid,重新找,实在烦人。

解决方案

微信小程序appid 修改作用于project.config.json,意味着通过脚本修改project.config.json 下的appid即可。

思路

  1. 通过 node 的 process.argv 获取命令行参数,根据参数获取不同的appid,进行修改
  2. 通过 node 的readFileSync、writeFileSync进行对微信小程序配置文件project.config.json读写操作即可。

实现代码 index.js

#!/usr/bin/env node
console.log('修改小程序开发环境')
const fs = require("fs");
const setting = {a: {dev: {mode: 'dev',appid: '******',},pro: {mode: 'pro',appid: '******',},},b: {dev: {mode: 'dev',appid: '******',},pro: {mode: 'pro',appid: '******',}}
}
let pjName = 'project.config.json'
let projectPath = ''let settingData = {}
try {let setArgv = process.argv.slice(2)if (setArgv.length !== 2) {console.log('缺少参数',setting)return}if (!setting[setArgv[0]]) {console.log('参数错误',setting)return}if (!setting[setArgv[0]][setArgv[1]]) {console.log('参数错误',setting)return}settingData = setting[setArgv[0]][setArgv[1]]console.log('process.argv', setArgv)projectPath = process.cwd() + '\\' + pjNamelet isFile = fs.statSync(projectPath).isFile()if (isFile) {console.log(projectPath)try {let data = fs.readFileSync(projectPath, 'utf8');let jsonData = JSON.parse(data)jsonData.setting.appid = settingData.appidjsonData.appid = settingData.appidfs.writeFileSync(projectPath, JSON.stringify(jsonData, '', 2)  );} catch (e) {console.error('json error', e);}}
} catch(e){}
console.log('修改小程序开发环境 成功:' + settingData.mode)

构建命令行

  1. 在 index.js 文件夹下,执行npm init ,生成package.json文件
  2. 在package.json中添加:
 "bin": {"set-wx": "./index.js"},

注意: 在index.js 顶部,添加: #!/usr/bin/env node

  1. 在目录下执行npm i ./ -g ,安装全局
  2. 安装成功,就可以使用 set-wx a dev ,修改配置了。乐滋滋
    代码

命令行修改微信小程序开发AppId相关推荐

  1. 01.微信小程序开发之环境搭建

    在开发之前你要有微信开发者工具,下载地址:https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html 这里我要假设大家有已经拿到了 ...

  2. 《微信小程序》微信小程序开发实例

    wx-gesture-lock  微信小程序的手势密码 WXCustomSwitch 微信小程序自定义 Switch 组件模板 WeixinAppBdNovel 微信小程序demo:百度小说搜索 sh ...

  3. 微信小程序开发提示“获取手机号码失败 ERROR:该appid没有权限”解决方案

    关于微信小程序开发提示"获取手机号码失败, ERROR:该appid没有权限"的解决方案 一般这种情况的出现都是出现在二次开发上面,原开发人员变动,不在开发该程序.新人在接手这个程 ...

  4. 微信小程序开发实战(9):单行输入和多行输入组件

    -----------支持作者请转发本文----------- 1.  单行输入组件(input) input组件用于录入单行文本,尽管input的基本功能是文本录入,但该组件的属性还是比较多的,也比 ...

  5. 微信小程序开发工具npm用不了,报错“npm不是内部或外部命令,也不是可运行的程序”

    微信小程序开发工具npm用不了,报"npm不是内部或外部命令,也不是可运行的程序"错时. 1.首先查看是否下载了Node.js.如果没有下载下载一个,最新版本的已经添加了环境变量, ...

  6. 软件创新实验室:微信小程序开发——账号注册和APPID申请

    文章目录 声明 账号注册 APPID申请 声明 1)该文章部分内容整理自网上的资料,如不小心侵犯了大家的权益,还望海涵,并联系博主删除. 2)博主是萌新上路,文中如有不当之处,请各位大佬指出,共同进步 ...

  7. 微信小程序开发获取AppID 和 AppSecret

    原文链接:微信小程序开发获取AppID 和 AppSecret 1 进入https://mp.weixin.qq.com 登录 2 左侧菜单选择[开发] 3 右侧tab选择[开发设置] 4 AppSe ...

  8. 微信小程序开发笔记(一)微信web开发者工具的下载与安装、AppID的申请

    参考教材:<微信小程序开发入门与实践> 雷磊 前言 微信提供了小程序的官方开发工具-微信开发者工具,当然,这个微信开发者工具 还可以用来调试运行在微信上的网页以及微信JS-SDK. 微信开 ...

  9. web前端-微信小程序开发学习

    web前端-微信小程序开发学习 1. 小程序的概述 2. 小程序的项目结构 2.1 小程序项目结构分析 2.2 WXML模版 2.3 小程序的宿主环境 3. 组件 3.1 视图容器类组件 3.2 常用 ...

  10. 一个微信小程序开发示例

    一个微信小程序开发示例(豆瓣电影) 新版本(不包含工作流)请移步至:https://github.com/zce/weapp-douban 当前仓库会暂缓更新,主要留下来给大家答疑 需要基础教程的朋友 ...

最新文章

  1. discoGAN 论文解读
  2. android编译产生的apk或so不安装 .
  3. 局域网聊天9月局域网聊天
  4. Lua - 空值判断的几种情况
  5. VFP中轻松绑定 Windows 事件
  6. 2017春季学期编译原理期末实验报告
  7. C语言ctype.h库
  8. 机器学习与深度学习基础概念介绍
  9. C语言编译-嵌入式系统
  10. Python判断字符类型
  11. 随手记---Python字典 del用法
  12. 条码打印机如何打印流水号
  13. 推荐几个下载英文原版电子书的网站-PDF
  14. 从代数结构上理解数集的分类
  15. ar和nm命令的使用
  16. 计算机的发展各阶段使用的元器件是什么,计算机的发展经历了哪几个阶段?各阶段的主要特征是什么?...
  17. 视频会议,远程协助平台接入亮亮视野AR眼镜,UVC摄像头方案
  18. python学习-进阶
  19. 从键盘任意输入一个年号,判断它是否是闰年。
  20. 【折腾电脑】win笔记本雷电3外接显卡过程记录(使用内屏)、雷电三驱动怎么更新

热门文章

  1. 麦子学院demo(html+css)
  2. python中eval函数的用法
  3. 使用Python进行IP地址查询
  4. vscode 脑图插件mindmap
  5. vs下qt混合编译错误:MOC问题
  6. FFmpeg常用错误码整理
  7. python爬虫运行时电脑无响应_Python爬虫爬资源时由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。怎么破?...
  8. 隆马斯克最喜欢的面试问题 【翻译】
  9. Egyptian Miracle Technical Service Support
  10. erdas裁剪影像_ERDAS遥感图像的分幅裁剪