回答編集履歴
2
a
test
CHANGED
@@ -159,3 +159,59 @@
|
|
159
159
|
|
160
160
|
|
161
161
|
ただ、`this.props.messages`が`undefined`だとエラーになるので、そこは、`undefined`であれば、`[]`を`Message`コンポーネントに渡すようにしておくか、`Message`コンポーネントのデフォルトのprops.messagesを`[]`のようにしておくかしておく必要はあるとおもいます。
|
162
|
+
|
163
|
+
|
164
|
+
|
165
|
+
# 3
|
166
|
+
|
167
|
+
|
168
|
+
|
169
|
+
> ListViewにするのが間違っているのでしょうか?
|
170
|
+
|
171
|
+
|
172
|
+
|
173
|
+
「修正依頼欄」にも記載しましたが、ListViewは使わないでOKだと思います。
|
174
|
+
|
175
|
+
|
176
|
+
|
177
|
+
利用している`GiftedChat`ライブラリ自体が内部で`ListView`を使っています。
|
178
|
+
|
179
|
+
|
180
|
+
|
181
|
+
[https://github.com/FaridSafi/react-native-gifted-chat/blob/master/src/MessageContainer.js#L152](https://github.com/FaridSafi/react-native-gifted-chat/blob/master/src/MessageContainer.js#L152)
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
```
|
186
|
+
|
187
|
+
createDataSource({ messages }) {
|
188
|
+
|
189
|
+
const ds = new ListView.DataSource({
|
190
|
+
|
191
|
+
rowHasChanged: (r1, r2) => r1 !== r2
|
192
|
+
|
193
|
+
});
|
194
|
+
|
195
|
+
|
196
|
+
|
197
|
+
this.dataSource = ds.cloneWithRows(messages);
|
198
|
+
|
199
|
+
console.log('messages', messages);
|
200
|
+
|
201
|
+
|
202
|
+
|
203
|
+
// messagesを置く場所を間違えている?
|
204
|
+
|
205
|
+
this.setState({ messages });
|
206
|
+
|
207
|
+
}
|
208
|
+
|
209
|
+
```
|
210
|
+
|
211
|
+
|
212
|
+
|
213
|
+
なので、この辺の`datasource`周りのことも`GiftedChat`ライブラリの内部で行われているので、この辺のコードも削除で問題ないと思います。
|
214
|
+
|
215
|
+
|
216
|
+
|
217
|
+
[https://github.com/FaridSafi/react-native-gifted-chat/blob/master/src/MessageContainer.js#L30](https://github.com/FaridSafi/react-native-gifted-chat/blob/master/src/MessageContainer.js#L30)
|
1
a
test
CHANGED
@@ -98,7 +98,7 @@
|
|
98
98
|
|
99
99
|
|
100
100
|
|
101
|
-
|
101
|
+
ということで、使用モジュールのソースコードをみてみると、やはり、`_id`キーがメッセージオブジェクト内に存在していることを前提にしているようなので、`_id`が必要になってくると思います。
|
102
102
|
|
103
103
|
|
104
104
|
|