mirror of
https://github.com/casdoor/casdoor.git
synced 2025-07-04 21:30:24 +08:00
Fix chat UI
This commit is contained in:
@ -30,7 +30,7 @@ class ChatBox extends React.Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
componentDidUpdate(prevProps) {
|
componentDidUpdate(prevProps) {
|
||||||
if (prevProps.messages !== this.props.messages && this.props.messages !== null) {
|
if (prevProps.messages !== this.props.messages && this.props.messages !== undefined && this.props.messages !== null) {
|
||||||
this.scrollToListItem(this.props.messages.length);
|
this.scrollToListItem(this.props.messages.length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -110,8 +110,12 @@ class ChatMenu extends React.Component {
|
|||||||
return items.map((item, index) => `${index}`);
|
return items.map((item, index) => `${index}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
setSelectedKeyToNewChat() {
|
setSelectedKeyToNewChat(chats) {
|
||||||
|
const items = this.chatsToItems(chats);
|
||||||
|
const openKeys = items.map((item) => item.key);
|
||||||
|
|
||||||
this.setState({
|
this.setState({
|
||||||
|
openKeys: openKeys,
|
||||||
selectedKeys: ["0-0"],
|
selectedKeys: ["0-0"],
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -120,7 +120,7 @@ class ChatPage extends BaseListPage {
|
|||||||
if (j < 0) {
|
if (j < 0) {
|
||||||
this.setState({
|
this.setState({
|
||||||
chatName: undefined,
|
chatName: undefined,
|
||||||
messages: undefined,
|
messages: [],
|
||||||
data: data,
|
data: data,
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
@ -180,7 +180,7 @@ class ChatPage extends BaseListPage {
|
|||||||
</div>
|
</div>
|
||||||
<div style={{flex: 1, height: "100%", backgroundColor: "white", position: "relative"}}>
|
<div style={{flex: 1, height: "100%", backgroundColor: "white", position: "relative"}}>
|
||||||
{
|
{
|
||||||
this.state.messages === null ? null : (
|
(this.state.messages === undefined || this.state.messages === null) ? null : (
|
||||||
<div style={{
|
<div style={{
|
||||||
position: "absolute",
|
position: "absolute",
|
||||||
top: -50,
|
top: -50,
|
||||||
@ -224,6 +224,7 @@ class ChatPage extends BaseListPage {
|
|||||||
this.setState({
|
this.setState({
|
||||||
loading: false,
|
loading: false,
|
||||||
data: res.data,
|
data: res.data,
|
||||||
|
messages: [],
|
||||||
pagination: {
|
pagination: {
|
||||||
...params.pagination,
|
...params.pagination,
|
||||||
total: res.data2,
|
total: res.data2,
|
||||||
@ -242,7 +243,7 @@ class ChatPage extends BaseListPage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!setLoading) {
|
if (!setLoading) {
|
||||||
this.menu.current.setSelectedKeyToNewChat();
|
this.menu.current.setSelectedKeyToNewChat(chats);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (Setting.isResponseDenied(res)) {
|
if (Setting.isResponseDenied(res)) {
|
||||||
|
Reference in New Issue
Block a user