0
在我的反應應用程序中,我試圖使用document.getElementByID(「id_of_div」)來讀取使用innerHTML寫入UI的元素,如下面的代碼所示。我正在使用反應並直接與DOM進行交互,這不是React的做事方式。請建議我如何改變這種方法並寫入我的數據,並將其作爲對象存儲爲反應中的UI。 在此先感謝。如何在不訪問React的情況下獲取div元素?
var uname = this.state.appuser;
axios.get(url).then(function(response) {
var display_city = response.data.data.request[0].query;
var Date1 = response.data.data.weather[0].date;
var windSpeed = response.data.data.current_condition[0].windspeedKmph;
var maxTempC = response.data.data.weather[0].maxtempC;
var minTempC = response.data.data.weather[0].mintempC;
var humidity = response.data.data.current_condition[0].humidity;
var visibility1 = response.data.data.current_condition[0].visibility;
var myobj = {
welcome_user: uname,
disp_city: display_city,
date: Date1,
wind_speed: windSpeed,
maxtempC: maxTempC,
mintempC: minTempC,
humid: humidity,
visibility: visibility1
}
console.log(myobj);
document.getElementById("welcome").innerHTML = "Welcome " + myobj.welcome_user;
document.getElementById("cityHolder").innerHTML = myobj.disp_city;
document.getElementById("date").innerHTML = myobj.date;
document.getElementById("windspeed").innerHTML = myobj.wind_speed + " kmph";
document.getElementById("maxtemp").innerHTML = myobj.maxtempC + " C";
document.getElementById("mintemp").innerHTML = myobj.mintempC + " C";
document.getElementById("humidity").innerHTML = myobj.humid + " %";
document.getElementById("visibility").innerHTML = myobj.visibility + "%";
}).catch(function(error) {
console.log(error);
});
},
我不想通過的document.getElementById訪問另一個組件定義的內部元素(「DIVID」) 什麼反應從MyObj中物體推着我的數據到用戶界面的方法是什麼?