#javascript #reactjs #firebase #firebase-storage
#javascript #reactjs #firebase #firebase-хранилище
Вопрос:
У меня есть файл в хранилище firebase, как я могу заставить мое приложение прочитать содержимое из него, а затем распечатать это содержимое внутри моего компонента класса div? Прямо сейчас у меня есть это так, что он просто открывает файл firebase на новой вкладке.
class ScanResult extends Component {
state = {
isFinishedScanning: false
}
componentDidMount() {
const storageRef = app.storage().ref();
app.database().ref("imgScanStatus").on("value", snapshot => {
snapshot.forEach(snap => {
this.setState({ isFinishedScanning: snap.val() });
});
if (this.state.isFinishedScanning) {
storageRef.child('scanFiles/scan.txt').getDownloadURL().then(function (url) {
window.open(url);//OPENS FIREBASE FILE IN NEW TAB
});
}
});
}
render() {
return (
<div>
<InnerTitleBar title="Scan Result" />
<p>Processing image...</p>
<img src={loading} />
<div>DATA FROM SCAN.TXT</div>
</div>
);
}
}
Ответ №1:
В документации показано, как это сделать.
getDownloadURL
предоставляет вам URL, который вы должны запросить, чтобы получить содержимое файла, затем вы можете поместить это содержимое в состояние вашего компонента, чтобы отобразить его.