【问题标题】:New line break in mailto is not working in react native iOSmailto 中的换行符在本机 iOS 中不起作用
【发布时间】:2021-09-19 14:18:15
【问题描述】:

mailto 换行符在本机 iOS 中不起作用。 %0D%0A 正在显示而不是新行。有人也遇到过这个问题吗?

代码片段:

    <RoundedButton
              onPress={() => {
              
               const body = `Device: ${Platform.OS === "ios" ? "iOS" : "Android"}%0D%0APhone Number: ${userState.profile?.mobilePhone}%0D%0AEmail: ${userState.profile?.email}%0D%0A`
               Linking.openURL(
                `mailto:abc@gmail.com?body=${body}`
              )}}
            >
            </RoundedButton> 

输出:

【问题讨论】:

  • 您需要对字符串进行编码以保证 URL 安全。使用mailto:abc@gmail.com?=${encodeURIComponent(body)}
  • 谢谢,Zed,我也试过了,但它显示的是
    而不是新行。
  • 后来发现是新iOS的一个open bug。 developer.apple.com/forums/thread/681023

标签: react-native mailto


【解决方案1】:

请这样写:

const body = Device: ${Platform.OS === "ios" ? "iOS" : "Android"} + '/n' + Phone Number: ${userState.profile?.mobilePhone} + '/n' + Email: ${userState.profile?.email} + '/n'...

【讨论】:

  • 谢谢,尼基塔。还是行不通。输出:iOS/n/电话号码:6756777/n 代码:cont body = "Device: ioS" + '/n' + "Phone Number:6756777" + '/n'
  • 后来发现是新iOS的一个open bug。 developer.apple.com/forums/thread/681023
猜你喜欢
  • 2017-07-09
  • 2014-12-20
  • 1970-01-01
  • 1970-01-01
  • 2011-01-31
  • 1970-01-01
  • 1970-01-01
  • 2021-04-22
  • 2012-05-26
相关资源
最近更新 更多