【发布时间】: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