1- Yukarıda indirtmek istediğiniz resmi kendi dosyanıza indirip path vererek indirmeniz mümkün
Örn: <a href="images/google.png" download>Click me!</a>
2- Veya uzak sunucudan(remote url) den bir dosya indirtmek istiyorsanız url nizi base64 formatına çevirip bu işlemi gerçekleştirebilirsiniz. Ancak bu kötü bir görüneme sahip.
Buraya örnek eklemek istedim fakat url çok uzun olduğu için hata aldım :) Sanırım arka tarafta bir kısıtlama var. Kısaca alt kısımda anlatayım.
https://base64.guru/converter/encode/url => Bu site ye girerek remote url kısmına indireceğin resmin linkine yaz. Alt kısımda sana uzunca bir base64 link gelecek. onu kopyala href attribute içine yapıştır. Bu şekilde indirme yapabilirsin.
https://jsfiddle.net/vsqpfgr8/ => şu şekilde bir örnek yaptım, umarım işine yarar.
Hocam cevap için çok teşekkür ederim. Çok açıklayıcı olmuş. Ayrıca video içinde çok teşekkür ederim. Harika anlatmışsınız.
https://jsfiddle.net/gprbft78/ => Şu örnek işine yarayabilir.
Hocam, sayfa yelindiğinde dizindeki verilerin silinmesi çok normal. Vue bilmiyorum ancak react kullanırken Redux kullanılıyo mesela.
Orda aldığın data sayfa yenilense dahi kaydettiğinde duruyo. Yani bi storage kullanman gerek. Vue için Vuex bu işi yapıyor sanırım.
Bir bakın isterseniz.
Hocam kodunuzdan sorunun ne olduğunu tam anlayamadım ancak aşağıdaki şekilde yaptığımda sıkıntısız çalışıyor.
export default class App extends React.Component {
state = {
value: '',
}
showAlert(){
Alert.alert( 'Alert Title', this.state.value);
}
onChangeText(text) {
this.setState({
...this.state,
value: text
})
}
render() {
return (
<View style={styles.container}>
<TextInput
style={{ height: 40, borderColor: 'gray', borderWidth: 1, width: 200 }}
onChangeText={text => this.onChangeText(text)}
value={this.state.value}
/>
<TouchableOpacity onPress = {this.showAlert.bind(this)} style = {styles.button}>
<Text>Alert</Text>
</TouchableOpacity>
</View>
);
}
}
Bu şekilde anlaşılmazsa diye ayrıca [https://snack.expo.io/ByrpzUY78](https://snack.expo.io/ByrpzUY78 "Şuraya") da örneği kaydettim.