uni-app 在hbuilderX中Markdown写作时图片自动上传图床(可调用picgo)并替换链接
uni-app 在hbuilderX中Markdown写作时图片自动上传图床(可调用picgo)并替换链接
插件需求
使用hbuilderX进行Markdown写作时插入或者粘贴的图片自动上传到图床(可以调用picgo)并替换链接
公司承接项目外包开发、双端(Android,iOS)原生插件开发。
为什么选择我们:
1、1000 项目开发积累,数百种商业模式开发经验,更懂您的需求,沟通无障碍。
2、一年免费技术保障,系统故障或被攻击,2小时快速响应提供解决方案落地。
3、软件开发源码定制工厂,去中间商降低成本,提高软件开发需求沟通效率。
4、纯原生开发,拒绝模板和封装系统,随时更新迭代,增加功能,无需重做系统。
5、APP定制包办软件著作权申请,30天内保证拿到软著证书,知识产权受保护。
6、中软云科技导入严谨的项目管理系统,确保项目准时交付,快速抢占市场商机。
7、软件开发费、维护费、第三方各种费用公开透明,不花冤枉钱,不玩套路。
已有大量双端插件、App、小程序、公众号、PC、移动端、游戏等案例。
行业开发经验:银行、医疗、直播、电商、教育、旅游、餐饮、分销、微商、物联网、零售等
商务QQ:1559653449
商务微信:fan-rising
7x24小时在线,欢迎咨询了解
在HBuilderX中使用Markdown写作时,要实现图片自动上传至图床(例如使用PicGo)并替换链接的功能,可以通过一些配置和脚本来实现。以下是一个基本的实现思路,并附上相关的代码示例。
1. 安装PicGo
首先,确保你已经安装了PicGo,并且配置好了你的图床。你可以通过npm安装PicGo:
npm install picgo -g
2. 配置PicGo
在PicGo中配置好你的图床,确保可以成功上传图片并获取到图片的URL。
3. 编写脚本
接下来,你需要编写一个脚本来监听Markdown文件的变更,当检测到图片插入时,自动调用PicGo上传图片并替换链接。以下是一个简单的Node.js脚本示例:
const fs = require('fs');
const path = require('path');
const { exec } = require('child_process');
const marked = require('marked');
const picgo = require('picgo');
// 初始化PicGo实例
const pg = new picgo();
pg.loadConfig().then(() => {
const markdownFilePath = 'path/to/your/markdown/file.md'; // 你的Markdown文件路径
// 读取Markdown文件内容
const content = fs.readFileSync(markdownFilePath, 'utf8');
// 使用marked解析Markdown内容
const tokens = marked.lexer(content);
// 遍历tokens,找到图片并上传
tokens.forEach(token => {
if (token.type === 'image') {
const imgSrc = token.href;
if (imgSrc.startsWith('![') && imgSrc.endsWith(']()')) {
// 这里提取出图片路径,需要根据你的Markdown格式进行解析
// 假设图片路径为`![alt](path/to/image.png)`中的`path/to/image.png`
const imgPathMatch = imgSrc.match(/!\[.*?\]\((.*?)\)/);
if (imgPathMatch && imgPathMatch[1]) {
const imgPath = imgPathMatch[1];
const imgAbsolutePath = path.resolve(__dirname, imgPath);
// 使用PicGo上传图片
pg.upload([imgAbsolutePath]).then(result => {
// 替换Markdown中的图片链接
const newImgSrc = result[0].url;
const newContent = content.replace(imgSrc, `![${token.text}](${newImgSrc})`);
fs.writeFileSync(markdownFilePath, newContent, 'utf8');
console.log(`图片已上传并替换链接: ${newImgSrc}`);
}).catch(err => {
console.error('上传图片失败:', err);
});
}
}
}
});
});
4. 运行脚本
将上述脚本保存为uploadImages.js
,并通过Node.js运行:
node uploadImages.js
注意事项
- 脚本中的
markdownFilePath
需要替换为你的Markdown文件路径。 - 脚本中的图片解析逻辑可能需要根据你的Markdown格式进行调整。
- 此脚本仅作为示例,可能需要根据实际情况进行优化和完善。
通过上述步骤,你可以在HBuilderX中编写Markdown时,实现图片自动上传至图床并替换链接的功能。