【发布时间】:2021-05-02 09:06:12
【问题描述】:
我正在尝试将所有'%2F' 和'%2B' 更改为'/' 和'+',以便从Firebase 检索编码图像的URL,但不知何故它向我显示了error of undefined不是一个对象(评估'NewText.replace')
以下是部分代码:
getURL(){
db.ref('/').once('value', (data) =>{
let RetrieveData=data.toString();
var NewText = RetrieveData.photoPath;
var FinalText = NewText.replace(/%2F/g, "/").replace(/%2B/g, "+");
this.setState({
urlHolder: FinalText,
})
});
}
是不是因为.replace函数不能替换数字?如果是,那我应该使用什么功能呢?
【问题讨论】:
-
不,这意味着
RetrieveData包含未定义。除此之外,您应该使用 decodeURIComponent 来完成此任务。 -
您可以(/应该)简单地使用
decodeURIComponent,而不是使用正则表达式 -
非常感谢您的回复,我对 JavaScript 和 React Native 还很陌生,不知道有内置函数。干杯,它现在可以工作了。
标签: javascript react-native firebase-realtime-database