mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-01 23:20:51 +00:00
Fix delete page (#6356)
* 01 fix memory leak * 02 delete useless side panel icon code * 03 delete useless function * 04 delete useless delete page
This commit is contained in:
@@ -30,18 +30,15 @@ const propTypes = {
|
||||
|
||||
class SidePanel extends Component {
|
||||
|
||||
constructor(props) {
|
||||
super(props);
|
||||
}
|
||||
|
||||
confirmDeletePage = (pageId) => {
|
||||
const config = deepCopy(this.props.config);
|
||||
const { pages } = config;
|
||||
const index = PageUtils.getPageIndexById(pageId, pages);
|
||||
config.pages.splice(index, 1);
|
||||
// TODO: To delete a page, do you need to delete all subpages at once(update PageUtils delete a page)
|
||||
wikiAPI.deleteWiki2Page(wikiId, pageId).then((res) => {
|
||||
this.props.updateWikiConfig(config);
|
||||
if (res.data.success === true) {
|
||||
this.props.updateWikiConfig(config);
|
||||
}
|
||||
}).catch((error) => {
|
||||
let errMessage = Utils.getErrorMsg(error);
|
||||
toaster.danger(errMessage);
|
||||
|
@@ -21,13 +21,18 @@ class PageItem extends Component {
|
||||
isShowDeleteDialog: false,
|
||||
isShowInsertPage: false,
|
||||
pageName: props.page.name || '',
|
||||
pageIcon: props.page.icon,
|
||||
isSelected: props.currentPageId === props.page.id,
|
||||
isMouseEnter: false,
|
||||
};
|
||||
this.pageItemRef = React.createRef();
|
||||
}
|
||||
|
||||
componentWillUnmount() {
|
||||
this.setState = () => {
|
||||
return;
|
||||
};
|
||||
}
|
||||
|
||||
onMouseEnter = () => {
|
||||
this.setState({ isMouseEnter: true });
|
||||
if (this.state.isSelected) return;
|
||||
@@ -65,18 +70,10 @@ class PageItem extends Component {
|
||||
};
|
||||
|
||||
savePageProperties = () => {
|
||||
const { name, icon, id } = this.props.page;
|
||||
const { pageIcon } = this.state;
|
||||
let pageName = this.state.pageName.trim();
|
||||
if (pageIcon !== icon || pageName !== name) {
|
||||
let newView = {};
|
||||
if (pageName !== name) {
|
||||
newView.name = pageName;
|
||||
}
|
||||
if (pageIcon !== icon) {
|
||||
newView.icon = pageIcon;
|
||||
}
|
||||
this.props.onUpdatePage(id, newView);
|
||||
const { name, id } = this.props.page;
|
||||
const pageName = this.state.pageName.trim();
|
||||
if (pageName !== name) {
|
||||
this.props.onUpdatePage(id, { name: pageName });
|
||||
}
|
||||
};
|
||||
|
||||
@@ -84,10 +81,6 @@ class PageItem extends Component {
|
||||
this.setState({ pageName: newName });
|
||||
};
|
||||
|
||||
onChangeIcon = (newIcon) => {
|
||||
this.setState({ pageIcon: newIcon });
|
||||
};
|
||||
|
||||
openDeleteDialog = () => {
|
||||
this.setState({ isShowDeleteDialog: true });
|
||||
};
|
||||
|
@@ -13,7 +13,6 @@ class WikiNav extends Component {
|
||||
isEditMode: PropTypes.bool,
|
||||
navigation: PropTypes.array,
|
||||
pages: PropTypes.array,
|
||||
onTogglePinViewList: PropTypes.func,
|
||||
setCurrentPage: PropTypes.func,
|
||||
onUpdatePage: PropTypes.func,
|
||||
onDeletePage: PropTypes.func,
|
||||
|
Reference in New Issue
Block a user