외부 API에서 수신 한 JSON을 구문 분석하려고합니다.redux를 사용하여 반응 객체에서 데이터를 수신합니다.
내 감속기는 다음과 같습니다
import { RECEIVED_FORECAST } from '../actions/index';
export default function ForecastReducer (state = [], action) {
switch (action.type) {
case RECEIVED_FORECAST:
return Object.assign({}, state, {
item: action.forecast
})
default:
return state;
}
}
다음 주 감속기 같은 간다 :
import { combineReducers } from 'redux';
import ForecastReducer from './forecast_reducer';
const rootReducer = combineReducers({
forecast: ForecastReducer
});
export default rootReducer;
및 컨테이너가 의
import React, { PropTypes, Component } from 'react';
import { connect } from 'react-redux';
class WeatherResult extends Component {
render() {
const forecast = this.props.forecast.item;
{console.log('almost: ', forecast)}
return (
<div>
<h1> </h1>
</div>
)
}
}
function mapStateToProps({ forecast }) {
return {
forecast
}
}
export default connect(mapStateToProps)(WeatherResult)
출력과 같은 거의 정확히 같은 아들 내가 생각하기에 :
almost:
Object
currently: {time: 1476406181, summary: "Drizzle", icon: "rain", nearestStormDistance: 0, precipIntensity: 0.0048, …}
daily: {summary: "Light rain on Saturday and Thursday, with temperatures rising to 92°F on Wednesday.", icon: "rain", data: Array}
그래서 내 질문은 예측의 가치를 어떻게 보여줄 수 있습니까? 현재 예측을 요약 해 봅시다. summary?
1) 난 그냥받을} {내에서 삽입하려고하면 : 나는 같은 매핑을 사용할 수 없습니다)
2 ')'forecast.currently : '형식 오류 정의되지 않은은 (평가 대상 아니다' json에 다른 구성 요소가 추가되었을 수 있습니다.
모든 파일을 매핑하지 않고이 속성에 직접 접근 할 수있는 방법이 있습니까?
감사합니다.
나는 당신이 보여주고 싶은 것을 얻지 못했습니까? 시도한 '1'에 대한 코드 pices를 게시 할 수 있습니까? 또한 당신은'쇼'하고 싶다고 언급했다. 보여 주면 렌더링 방법으로 렌더링하고 싶습니까? – Panther
'const {forecast : {item : {현재 : {요약}}}} = this.props'를 시도한 다음 render에서'{summary || '아직 데이터가 없습니다.'} '또는 무엇인가. – steezeburger
@steezeburger 귀하의 아이디어에 대해 많은 감사드립니다! 나는 그것을 시도하고 같은 오류가 발생합니다. 따라서 현재까지 평가가 끝났습니다. 그러나 내가'const {forecast : {item : {현재}}} = this.props'를 시도 할 때 TypeError : undefined가 'this.props.forecast.item.currently'를 평가하는 객체가 아닙니다. 'item'이 (가) 객체로 인식되지 않는 것 같습니다. 콘솔에서 볼 수있는 것처럼 보입니다. 그래서 나는 문제가 감속기에있을 것 같아 .. – Olenka