You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在next-share的EmailShareButton组件中实现邮件文本加粗

修复next-share EmailShareButton邮件内容加粗显示[object Object]问题

问题出在你把JSX元素(<bold>)和字符串直接拼接,JSX本质是对象,转为字符串后就变成了[object Object]。要解决这个问题,需要将加粗标签以纯HTML字符串的形式拼接,而不是用JSX语法。

修正后的代码示例

使用模板字符串更简洁清晰:

const body = `
<strong>${job.title}</strong>

${job?.description.replace(/<[^>]*>?/gm, '').replace('&nbsp;', ' ').slice(0, 100)}...
`;

如果习惯用字符串拼接写法:

const body = 
    '<strong>' + job.title + '</strong>\n\n' + 
    job?.description.replace(/<[^>]*>?/gm, '').replace('&nbsp;', ' ').slice(0, 100) + '...\n\n';

关键说明

  1. 改用HTML原生的<strong>标签(比<bold>语义更规范),并以字符串形式包裹,而非JSX元素
  2. 确保body是纯字符串类型,因为next-share的EmailShareButton的body参数接收的是字符串,用于构造mailto链接的内容
  3. 多数主流邮件客户端支持解析mailto链接中的HTML格式内容,加粗效果会正常渲染

内容的提问来源于stack exchange,提问作者Teik Cheah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 06:27:07