У меня есть следующий код:
reduce.js:
import { fromJS } from 'immutable';
const initialState = fromJS({
"ff0bce4-ef2e-4eb6-b7b4-2f759d6ee0bb": {
"id": "8ff0bce4-ef2e-4eb6-b7b4-2f759d6ee0bb",
"type": "course",
"attributes": {
"title": "Wordpress"
},
"links": {
"self": "http://api.dev.course.com/api/v1/course/8ff0bce4-ef2e-4eb6-b7b4-2f759d6ee0bb"
},
"relationships": {
"modules": {
"links": {
"self": "http://api.dev.course.com/api/v1/course/8ff0bce4-ef2e-4eb6-b7b4-2f759d6ee0bb/relationships/modules",
"related": "http://api.dev.course.com/api/v1/course/8ff0bce4-ef2e-4eb6-b7b4-2f759d6ee0bb/modules"
}
}
}
},
"cd65128e-c89e-4a1a-8022-148e6bc673d2": {
"id": "cd65128e-c89e-4a1a-8022-148e6bc673d2",
"type": "course",
"attributes": {
"title": "Symfony"
},
"links": {
"self": "http://api.dev.course.com/api/v1/course/cd65128e-c89e-4a1a-8022-148e6bc673d2"
},
"relationships": {
"modules": {
"links": {
"self": "http://api.dev.course.com/api/v1/course/cd65128e-c89e-4a1a-8022-148e6bc673d2/relationships/modules",
"related": "http://api.dev.course.com/api/v1/course/cd65128e-c89e-4a1a-8022-148e6bc673d2/modules"
}
}
}
}
});
function list(state = initialState, action) {
switch (action.type) {
default:
return state;
}
};
export default list;
courseList.js
import React, { Component } from "react";
import { connect } from "react-redux";
class CourseListContainer extends Component {
render() {
return (
<div>
{
this.props.courses.map((course, s) => {
<div>test1</div>
})
}
</div>
)
}
}
function mapStateToProps(state, props) {
const common = state.get('common');
return {
courses: common.get('courseList'),
}
}
export default connect(mapStateToProps)(CourseListContainer);
Когда я пытаюсь повторить курсы, я получаю это предупреждение:
Предупреждение. Использование Карт в качестве дочерних элементов не поддерживается и, вероятно, приведет к неожиданным результатам. Преобразовать его в последовательность / повторяемую о ...
Итак, я пытался использовать разные способы итерации, такие как: valueSeq (), entrySeq ... но ни один из них не работает. Я не получил никакого предупреждения в этом случае, но я не видел «asdasdasd» дважды. В этом случае это похоже на курсы пустые, но не потому, что я проверяю консоль и вижу информацию.