0
私は多くのチップ(
http://react-toolbox.com/#/components/chip)を追加しようとしたがリアクトで、私は本当に失敗
exemplesツールボックス削除可能なチップを反応します。 1つのDeletable Chipがある限り動作しますが、それ以上のチップで動作させることはできません。ここで
は私のコードです:
import React, { PropTypes } from 'react';
import Chip from 'react-toolbox/lib/chip';
var Chiplist = [
{'id': 1, 'title': 'Keyword 1'},
{'id': 2, 'title': 'Keyword 2'},
{'id': 3, 'title': 'Keyword 3'},
{'id': 4, 'title': 'Keyword 4'}
];
class ChipsList extends React.Component {
constructor(props) {
super(props);
this.state = {deleted : {1: false, 2: false, 3: false, 4: false}};
/*for(i = 0; i < Chiplist.length; $i++){
state.deleted.i = false;
}*/
}
/* for(i = 0; i < Chiplist.length; $i++){
state.deleted.i = false;
}*/
handleDeleteClick(index) {
/*this.setState({
deleted : {1: false, 2: true, 3: false, 4: false}
});
console.log(this);*/
console.log(index);
};
render() {
const mychips = Chiplist.map((chip, index) =>
this.state.deleted[index] ? null : (<Chip deletable onDeleteClick={this.handleDeleteClick(index + 1)}>{chip.title}</Chip>)
);
return (
<div className="chips-list">
{ mychips }
</div>
);
}
}
export default ChipsList;
私は関数にインデックス値を渡す場合、関数はすべての時間と呼ばれているのはなぜ、私はなぜか分からない...
Thxを、しかし:あなたがあなたの元のメソッドを使用してチップを作成することができ、その後
:何をする必要があると、このような関数を返す関数を、持っていますhandleDeleteClick関数を使用すると、何も記録されません。 と私はconsole.log(インデックス);戻り値の前に、インデックス変数は奇妙なオブジェクトですが、私が期待するintではありません... – Spas
私の答えを少し更新しました。それでも問題が解決しない場合は、あなたのコンポーネントを今のように見せかけることができますか? – taylorc93
これは、更新されたコードで動作します。 Thx a lot :) – Spas