From ec47699ef82d21609d784a961a85d52c47a4aa83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B0=A2=E6=80=9D?= <2897217417@qq.com> Date: Wed, 7 Dec 2022 18:32:52 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BD=91=E9=A1=B5=E6=A0=87=E9=A2=98=E4=BF=AE?= =?UTF-8?q?=E6=94=B9-=E4=B8=AA=E4=BA=BA=E4=B8=BB=E9=A1=B5/=E7=BB=84?= =?UTF-8?q?=E7=BB=87/=E9=A1=B9=E7=9B=AE=E7=82=B9=E8=B5=9E=E5=85=B3?= =?UTF-8?q?=E6=B3=A8fork=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/forge/Notice/Index.jsx | 8 ++++++++ src/forge/Team/Group/GroupDetails.jsx | 9 ++++++++- src/forge/Team/Group/GroupNew.jsx | 14 +++++++++++++- src/forge/Team/List.jsx | 8 ++++++++ src/forge/Team/Setting/TeamSettingIndex.jsx | 8 ++++++++ src/forge/Team/Sub/Detail.jsx | 2 +- src/forge/Team/Sub/SubDetail.jsx | 7 +++++++ src/forge/Team/TeamGroup.jsx | 11 ++++++++++- src/forge/Team/TeamMember.jsx | 8 ++++++++ src/forge/UsersList/fork_users.js | 13 +++++++++++++ src/forge/UsersList/praise_users.js | 14 ++++++++++++++ src/forge/UsersList/watch_users.js | 15 +++++++++++++++ src/forge/users/GeneralView/Index.jsx | 15 +++++++++++++-- src/forge/users/InfosUser.js | 11 +++++++++++ src/forge/users/Statistics/Index.jsx | 8 ++++++++ src/forge/users/Team.jsx | 10 ++++++++++ src/forge/users/devOpsCI.jsx | 9 +++++++++ 17 files changed, 164 insertions(+), 6 deletions(-) diff --git a/src/forge/Notice/Index.jsx b/src/forge/Notice/Index.jsx index 73a2561bd..7cd05a044 100644 --- a/src/forge/Notice/Index.jsx +++ b/src/forge/Notice/Index.jsx @@ -27,6 +27,14 @@ function Index(props){ const [ flag , setFlag ] = useState(true); const { current_user } = props; + useEffect(()=>{ + if(user){ + // 更改网页标题 + const {username, login} = user; + document.title = `${menu === "undo" ? '接收仓库' : '成员申请'}-${username}/${login}`; + } + },[user, menu]) + useEffect(()=>{ if((username && current_user && (current_user.login !== username))){ props.history.push(`/${username}`); diff --git a/src/forge/Team/Group/GroupDetails.jsx b/src/forge/Team/Group/GroupDetails.jsx index 1122ce724..f03a79c0d 100644 --- a/src/forge/Team/Group/GroupDetails.jsx +++ b/src/forge/Team/Group/GroupDetails.jsx @@ -25,7 +25,7 @@ export default ((props) => { const [ members , setMembers ] = useState(undefined); const [ group , setGroup ] = useState(undefined); const { OIdentifier, groupId } = props.match.params; - const { current_user } = props; + const { current_user, organizeDetail } = props; useEffect(()=>{ if(groupId){ @@ -42,6 +42,13 @@ export default ((props) => { }).catch(error=>{}) } + useEffect(()=>{ + if(group && organizeDetail){ + const {nickname} = organizeDetail; + document.title = `${group.nickname}-${nickname}` + } + }, [organizeDetail, group]) + useEffect(()=>{ if(nav === "0"){ getMember(OIdentifier, groupId,page); diff --git a/src/forge/Team/Group/GroupNew.jsx b/src/forge/Team/Group/GroupNew.jsx index ad6ff2a16..7155b8271 100644 --- a/src/forge/Team/Group/GroupNew.jsx +++ b/src/forge/Team/Group/GroupNew.jsx @@ -1,7 +1,19 @@ -import React from 'react'; +import React, { useEffect } from 'react'; import GroupFrom from './GroupForm' +import axios from 'axios'; function GropNew(props){ + const OIdentifier = props.match.params.OIdentifier; + // 更改网页标签 + useEffect(()=>{ + OIdentifier && axios.get(`/organizations/${OIdentifier}.json`).then(result=>{ + if(result && result.data){ + const {nickname} = result.data; + document.title = `新建团队-${nickname}` + } + }).catch(error=>{}) + },[OIdentifier]) + return(
diff --git a/src/forge/Team/List.jsx b/src/forge/Team/List.jsx index aa3a48c16..c21e3e5fe 100644 --- a/src/forge/Team/List.jsx +++ b/src/forge/Team/List.jsx @@ -23,6 +23,14 @@ function List(props){ const OIdentifier = props.match.params.OIdentifier; const organizeDetail = props.organizeDetail; + useEffect(()=>{ + if(organizeDetail){ + // 更改网页标题 + const {nickname} = organizeDetail; + document.title = `${nickname}` + } + },[organizeDetail]) + useEffect(()=>{ if(OIdentifier){ setIsSpin(true); diff --git a/src/forge/Team/Setting/TeamSettingIndex.jsx b/src/forge/Team/Setting/TeamSettingIndex.jsx index 462a92d10..02f6eda33 100644 --- a/src/forge/Team/Setting/TeamSettingIndex.jsx +++ b/src/forge/Team/Setting/TeamSettingIndex.jsx @@ -27,6 +27,14 @@ const Hooks = Loadable({ export default (( props )=>{ const pathname = props.location.pathname; const OIdentifier = props.match.params.OIdentifier; + const {organizeDetail} = props; + + useEffect(()=>{ + if(organizeDetail){ + const {nickname} = organizeDetail; + document.title = `组织设置-${nickname}` + } + }, [organizeDetail]) function returnActive (pathname){ let a = 0; diff --git a/src/forge/Team/Sub/Detail.jsx b/src/forge/Team/Sub/Detail.jsx index f591c864f..4c2b7b20b 100644 --- a/src/forge/Team/Sub/Detail.jsx +++ b/src/forge/Team/Sub/Detail.jsx @@ -114,7 +114,7 @@ function Detail(props){ { - return + return }} > {/* 组织成员 */} diff --git a/src/forge/Team/Sub/SubDetail.jsx b/src/forge/Team/Sub/SubDetail.jsx index 6bf79b962..b0b6dbe53 100644 --- a/src/forge/Team/Sub/SubDetail.jsx +++ b/src/forge/Team/Sub/SubDetail.jsx @@ -44,6 +44,13 @@ export default ((props)=>{ } }).catch(error=>{}) } + + useEffect(()=>{ + if(detail){ + const {nickname, organization} = detail; + document.title = `团队设置-${nickname}-${organization.nickname}` + } + }, [detail]) return(
diff --git a/src/forge/Team/TeamGroup.jsx b/src/forge/Team/TeamGroup.jsx index 1920caed6..44062090b 100644 --- a/src/forge/Team/TeamGroup.jsx +++ b/src/forge/Team/TeamGroup.jsx @@ -1,9 +1,18 @@ -import React from 'react'; +import React, {useEffect} from 'react'; import { Banner } from '../Component/layout'; import GroupItems from './TeamGroupItems'; const limit = 14; function TeamGroup({organizeDetail,history,current_user}){ + + useEffect(()=>{ + if(organizeDetail){ + // 更改网页标题 + const {nickname} = organizeDetail; + document.title = `组织团队-${nickname}` + } + },[organizeDetail]) + return(
组织团队 diff --git a/src/forge/Team/TeamMember.jsx b/src/forge/Team/TeamMember.jsx index 7bffb65d2..676e0d7fe 100644 --- a/src/forge/Team/TeamMember.jsx +++ b/src/forge/Team/TeamMember.jsx @@ -20,6 +20,14 @@ function TeamMember({organizeDetail,current_user,history,match}){ } },[organizeDetail,page]); + useEffect(()=>{ + if(organizeDetail){ + // 更改网页标题 + const {nickname} = organizeDetail; + document.title = `组织成员-${nickname}` + } + },[organizeDetail]) + function getData(){ setIsSpin(true); const url = `/organizations/${organizeDetail.id}/organization_users.json`; diff --git a/src/forge/UsersList/fork_users.js b/src/forge/UsersList/fork_users.js index a3d9c2a2d..4eeeebc21 100644 --- a/src/forge/UsersList/fork_users.js +++ b/src/forge/UsersList/fork_users.js @@ -19,8 +19,21 @@ class ForkUsers extends Component { componentDidMount = () => { this.getUsersList(); + this.updateTitle(); }; + componentDidUpdate=()=>{ + this.updateTitle(); + } + + updateTitle=()=>{ + const {projectDetail} = this.props; + if(projectDetail){ + const {author, name} = projectDetail; + document.title = `Fork用户-${author.name}/${name}` + } + } + getUsersList = (page, limit) => { this.setState({ isSpin: true, diff --git a/src/forge/UsersList/praise_users.js b/src/forge/UsersList/praise_users.js index 31f364215..4972de11e 100644 --- a/src/forge/UsersList/praise_users.js +++ b/src/forge/UsersList/praise_users.js @@ -1,7 +1,21 @@ import React, { Component } from "react"; import CommonUsers from "./common_users" class PraiseUsers extends Component { + componentDidMount=()=>{ + this.updateTitle(); + } + componentDidUpdate=()=>{ + this.updateTitle(); + } + updateTitle=()=>{ + const {projectDetail} = this.props; + if(projectDetail){ + const {author, name} = projectDetail; + document.title = `点赞用户-${author.name}/${name}` + } + } + render() { const { owner , projectsId } = this.props.match.params; return ( diff --git a/src/forge/UsersList/watch_users.js b/src/forge/UsersList/watch_users.js index a78efcb0b..ebfa86526 100644 --- a/src/forge/UsersList/watch_users.js +++ b/src/forge/UsersList/watch_users.js @@ -1,6 +1,21 @@ import React, { Component } from "react"; import CommonUsers from "./common_users" class WatchUsers extends Component { + componentDidMount=()=>{ + this.updateTitle(); + } + componentDidUpdate=()=>{ + this.updateTitle(); + } + + updateTitle=()=>{ + const {projectDetail} = this.props; + if(projectDetail){ + const {author, name} = projectDetail; + document.title = `关注用户-${author.name}/${name}` + } + } + render() { const { owner , projectsId } = this.props.match.params; return ( diff --git a/src/forge/users/GeneralView/Index.jsx b/src/forge/users/GeneralView/Index.jsx index 04c0768e1..167842f6f 100644 --- a/src/forge/users/GeneralView/Index.jsx +++ b/src/forge/users/GeneralView/Index.jsx @@ -32,7 +32,18 @@ function Index(props) { const username = props.match.params.username; const current_user = props.current_user; - const user = props.user; + const {menuKey, user} = props; + + useEffect(()=>{ + if(user){ + const {username, login} = user; + if(menuKey === '0'){ + document.title = `${username}(${login})` + }else{ + document.title = `个人简介-${username}/${login}` + } + } + },[menuKey]) useEffect(()=>{ if(user){ @@ -97,7 +108,7 @@ function Index(props) { }).catch(error=>{}) } return( - props && props.menuKey === "0" ? + menuKey && menuKey === "0" ?
{ + this.updateTitle(); this.get_projects(); }; componentDidUpdate = (prevProps) => { + this.updateTitle(); const { username } = this.props.match.params; const prevUser = prevProps.match.params.username; if (prevProps.project_type !== this.props.project_type || (prevUser && username && prevUser !== username)) { @@ -36,6 +38,15 @@ class InfosUser extends Component { } }; + // 更改网页标题 + updateTitle=()=>{ + const {user} = this.props; + if(user){ + const {username, login} = user; + document.title = `参与项目-${username}/${login}` + } + } + get_projects = (isPublic) => { const { username } = this.props.match.params; const { project_type } = this.props; diff --git a/src/forge/users/Statistics/Index.jsx b/src/forge/users/Statistics/Index.jsx index 21d6d0bd0..a0688c81f 100644 --- a/src/forge/users/Statistics/Index.jsx +++ b/src/forge/users/Statistics/Index.jsx @@ -30,11 +30,19 @@ function Index(props) { const [ cData, setCData ] = useState(undefined); const [ cloudData, setCloudData ] = useState(undefined); + const {user} = props; const disabledDate = current => { return current && current > moment().endOf('day'); }; + useEffect(()=>{ + if(user){ + const {username, login} = user; + document.title = `数据统计-${username}/${login}` + } + }, []) + // 获取角色定位接口数据 useEffect(()=>{ getRoleSta(); diff --git a/src/forge/users/Team.jsx b/src/forge/users/Team.jsx index bb0bf6eeb..d73e89e11 100644 --- a/src/forge/users/Team.jsx +++ b/src/forge/users/Team.jsx @@ -17,6 +17,16 @@ function Team(props){ const [ search ,setSearch ] = useState(undefined); const { checkIfLogin , showLoginDialog , current_user } = props; const { username } = props.match.params; + const {user} = props; + + useEffect(()=>{ + if(user){ + // 更改网页标题 + const {username, login} = user; + document.title = `参与组织-${username}/${login}`; + } + },[user]) + useEffect(()=>{ if(username){ getList(search); diff --git a/src/forge/users/devOpsCI.jsx b/src/forge/users/devOpsCI.jsx index 563120a65..567a6da69 100644 --- a/src/forge/users/devOpsCI.jsx +++ b/src/forge/users/devOpsCI.jsx @@ -7,6 +7,15 @@ import CIList from './CIList'; function DevOpsCI(props){ const [ selectKey , setSelectKey ] = useState("dispose"); + const {user} = props; + + useEffect(()=>{ + if(user){ + // 更改网页标题 + const {username, login} = user; + document.title = `DevOps引擎-${username}/${login}`; + } + },[user]) function changeKeys(e){ setSelectKey(e.key);