【发布时间】:2017-12-09 00:44:11
【问题描述】:
我在 React Native 的 Share 组件中引用了我的一个道具,一个 url(但以纯对象形式)。我尝试了几种不同的方法来让 Share 实际能够阅读。没有一个工作。他们应该....有人看到我错过了什么吗?
代码如下:
onShareButtonPress() {
const { image } = this.props.employee;
const test = JSON.stringify(image);
//console.log(test);
Share.share({
message: 'Here\'s your image:',
url: test,
title: 'Dealerslist Image'
}, {
// Android only:
dialogTitle: 'Share Dealerslist goodness',
// iOS only:
excludedActivityTypes: [
'com.apple.UIKit.activity.PostToTwitter'
]
})
这也不行:
url: 'image',
如果我记录“测试”,我会得到 url 作为预期的字符串。但是Share仍然无法识别它。但是,如果我直接从控制台复制字符串并将其作为 url 硬编码/粘贴,它就可以完美地工作。 此代码有效:
Share.share({
message: 'Here\'s your image:',
url: "https://firebasestorage.googleapis.com/v0/b/ag-equipment-
southwest.appspot.com/o/1512760876838.4595.jpg?
alt=media&token=1bfeba0d-d788-4774-91a7-7801c8084b30",
title: 'Dealerslist Image'
}
并且“测试”日志完全一样:
"https://firebasestorage.googleapis.com/v0/b/ag-equipment-
southwest.appspot.com/o/1512760876838.4595.jpg?
alt=media&token=1bfeba0d-d788-4774-91a7-7801c8084b30"
所有这些我都尝试过共享到 ios 邮件。并且动态链接不适用于邮件。
但是,如果我只是分享到 ios 剪贴板,我会得到:
Here's your image:%22https://firebasestorage....and so on
我是 web 和移动开发的新手,所以我不完全确定预期的行为是否会复制 '%22' 作为可能的中断。无论如何,ios 邮件共享没有获得任何 url。
任何帮助将不胜感激!谢谢!
【问题讨论】:
-
JSON.stringify有什么原因吗?尝试删除它。
标签: javascript react-native dynamic share