我正在使用 ReactJS 构建看板应用程序,用户可以在其中将“卡片”添加到三个不同的“列”(Todos、Onprogress 和 Done)。我遇到的问题是,应该在卡片中显示的内容没有按原样显示,尽管我的状态返回它的对象很好(当我 console.log 一切时)。我认为问题在于我将一个对象推送到一个数组中,然后将其作为值添加到我的一个键状态中,因此当我使用 props 传递它时,我的数据没有被正确读取。我将在下面分享我所有的代码库。
这是我的应用程序组件:
import React, { Component } from 'react';
import Column from './Column';
import AddCardForm from './AddCardForm';
import './App.css';
class App extends Component {
constructor(props) {
super(props)
this.state = {
columns: [
{
name: 'Todos',
cards: []
},
{
name: 'Onprogress',
cards: []
},
{
name: 'Done',
cards: []
},
]
};
};
// componentDidMount() {
// const { coldata } = this.state.columns
// console.log(coldata);
// // this.ref = base.syncState();
// }
addCard = (card, otherStatus) => {
console.log("Adding a Card");
const cards = { ...this.state.columns.cards };
cards[`card`] = card;
let todosCards = []
let onprogressCards = []
let doneCards = []
Object.values(otherStatus).map(function(value) {
if (value.includes('Onprogress') && value.includes('Done')) {
todosCards.push(cards)
} else if (value.includes('Todos') && value.includes('Done')) {
onprogressCards.push(cards);
} else if (value.includes('Todos') && value.includes('Onprogress')) {
doneCards.push(cards);
}
return(todosCards || onprogressCards || doneCards);
});
console.log(todosCards);
console.log(onprogressCards);
console.log(doneCards);
this.setState({
columns: [
{
name: 'Todos',
cards: todosCards
},
{
name: 'Onprogress',
cards: onprogressCards
},
临摹微笑
蓝山帝景
相关分类