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);
From 37499aa2014b1cfb4accd687e7188ae256335886 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=B0=A2=E6=80=9D?= <2897217417@qq.com>
Date: Thu, 8 Dec 2022 11:01:52 +0800
Subject: [PATCH 3/3] =?UTF-8?q?=E7=BD=91=E9=A1=B5=E6=A0=87=E9=A2=98?=
=?UTF-8?q?=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/App.js | 4 +--
src/forge/About/Index.jsx | 10 +++----
src/forge/AboutUs/AboutUs.jsx | 1 +
src/forge/Activity/Activity.js | 14 ++++++++++
src/forge/Component/SiderBar.js | 2 +-
src/forge/DevOps/Index.jsx | 9 ++++++-
src/forge/Main/CoderDepot.jsx | 26 ++++++++++++++++---
src/forge/Main/CoderRootCommit.js | 11 ++++++++
src/forge/Main/CoderRootFileDetail.js | 15 ++++++++++-
src/forge/Main/Detail.js | 1 -
src/forge/Main/Diff.jsx | 10 ++++++-
src/forge/Main/Index.js | 1 +
src/forge/Main/projecthome/Index.jsx | 1 +
src/forge/Main/tag/Index.jsx | 8 ++++++
src/forge/Main/tree/Index.jsx | 7 +++++
src/forge/Main/version/New.jsx | 6 +++++
src/forge/Main/version/version.js | 10 ++++++-
src/forge/Merge/CreateMerge.js | 11 ++++++++
src/forge/Merge/MessageCount.js | 15 +++++++++++
src/forge/Merge/UpdateMerge.js | 14 ++++++++++
src/forge/Merge/merge.js | 13 ++++++++++
src/forge/New/Index.js | 8 ++++++
src/forge/Newfile/Index.js | 17 ++++++++++++
src/forge/Newfile/codeReview/index.jsx | 12 ++++++---
src/forge/Newfile/m_editor.js | 2 --
src/forge/Newfile/upload_file.js | 17 ++++++++++++
src/forge/Newfile/webIDE.jsx | 8 +++++-
src/forge/Order/Detail.js | 14 ++++++++++
src/forge/Order/Milepost.js | 13 ++++++++++
src/forge/Order/MilepostDetail.js | 11 ++++++++
src/forge/Order/UpdateMilepost.js | 15 ++++++++++-
src/forge/Order/newMilepost.js | 17 +++++++++++-
src/forge/Order/order.js | 14 ++++++++--
src/forge/Order/order_form.js | 17 ++++++++++++
.../SecuritySetting/notice/manager/Index.jsx | 1 +
.../SecuritySetting/notice/myNotice/Index.jsx | 5 +++-
src/forge/SecuritySetting/sub/New.jsx | 8 ++++--
src/forge/SecuritySetting/sub/SSH.jsx | 4 +++
src/forge/Server/List.jsx | 8 ++++++
src/forge/Server/data.jsx | 4 +++
src/forge/Server/reposyncer/index.jsx | 9 +++++++
src/forge/Settings/Branch.js | 6 +++++
src/forge/Settings/BranchRule.jsx | 9 ++++++-
src/forge/Settings/Collaborator.js | 10 ++++++-
src/forge/Settings/Setting.js | 13 +++++++++-
src/forge/Settings/Webhooks/Index.jsx | 8 ++++++
src/forge/Settings/Webhooks/New.jsx | 9 ++++++-
src/forge/Settings/new_tags.js | 11 ++++++++
src/forge/TeachingPractice/Teaching.jsx | 5 +++-
src/forge/Team/Group/GroupDetailProject.jsx | 1 +
src/forge/Team/New.jsx | 1 +
src/forge/Wiki/EditWiki.jsx | 10 +++++++
src/forge/Wiki/Index.jsx | 11 ++++++++
src/forge/Wiki/Preview.jsx | 11 +++++---
src/forge/users/Infos.js | 2 +-
src/forge/users/Material/Base.jsx | 4 +++
src/forge/users/Material/Password.jsx | 1 +
src/glcc/index.jsx | 4 +++
src/home/Index.jsx | 7 ++++-
src/modules/tpm/NewHeader.js | 1 -
src/modules/tpm/TPMIndexHOC.js | 2 --
61 files changed, 476 insertions(+), 43 deletions(-)
diff --git a/src/App.js b/src/App.js
index 9d7745691..28b3f7861 100644
--- a/src/App.js
+++ b/src/App.js
@@ -232,7 +232,7 @@ class App extends Component {
this.setState({
mygetHelmetapi: undefined
});
- document.title = "Forge";
+ // document.title = "GitLink | 确实开源";
var link = document.createElement('link'),
oldLink = document.getElementById('dynamic-favicon');
link.id = 'dynamic-favicon';
@@ -246,7 +246,7 @@ class App extends Component {
//获取数据的时候
gettablogourldata = (response) => {
- document.title = response.data.setting.name;
+ // document.title = `app${response.data.setting.name}`;
var link = document.createElement('link'),
oldLink = document.getElementById('dynamic-favicon');
link.id = 'dynamic-favicon';
diff --git a/src/forge/About/Index.jsx b/src/forge/About/Index.jsx
index b36b815cf..0546278f5 100644
--- a/src/forge/About/Index.jsx
+++ b/src/forge/About/Index.jsx
@@ -16,14 +16,14 @@ function Index(props){
const [ fileList , setFileList ] = useState(undefined);
const [ editOpration , setEditOpration ] = useState(false);
const { owner , projectsId } = props.match.params;
-
- const { isManager , isDeveloper , current_user } = props;
-
+ const { isManager , isDeveloper , current_user, projectDetail } = props;
+
useEffect(()=>{
- if(owner && projectsId){
+ if(owner && projectsId && projectDetail){
Init();
+ document.title = `主页-${projectDetail.author.name}/${projectDetail.name}`;
}
- },[owner,projectsId])
+ },[owner,projectsId, projectDetail])
useEffect(()=>{
if( (current_user && current_user.login) && (isManager === true || isDeveloper === true)){
diff --git a/src/forge/AboutUs/AboutUs.jsx b/src/forge/AboutUs/AboutUs.jsx
index 2113f7c75..7f63044a9 100644
--- a/src/forge/AboutUs/AboutUs.jsx
+++ b/src/forge/AboutUs/AboutUs.jsx
@@ -32,6 +32,7 @@ function AboutUs(){
const [units, setUnits] = useState([]);
useEffect(()=>{
+ document.title="关于我们";
//添加浏览器滚动监听事件
window.addEventListener('scroll', scrollListener);
//请求topics.json接口获取合作单位信息
diff --git a/src/forge/Activity/Activity.js b/src/forge/Activity/Activity.js
index 1525cb499..5f04acfcc 100644
--- a/src/forge/Activity/Activity.js
+++ b/src/forge/Activity/Activity.js
@@ -53,6 +53,7 @@ class Activity extends Component{
}
}
componentDidMount=()=>{
+ this.updateDocumentTitle();
const { time,type,status,page } = this.state;
this.setState({
isSpin:true
@@ -60,6 +61,19 @@ class Activity extends Component{
this.getInfo(time,type,status,page);
}
+ componentDidUpdate(){
+ this.updateDocumentTitle();
+ }
+
+ // 更新网页标题
+ updateDocumentTitle(){
+ const {projectDetail} = this.props;
+ if(projectDetail && document.title.indexOf('动态-') === -1){
+ const { author, name} = projectDetail;
+ document.title = `动态-${author.name}/${name}`;
+ }
+ }
+
getInfo =(time,type,status,page)=>{
const { projectsId , owner } = this.props.match.params;
const url = `/${owner}/${projectsId}/activity.json`;
diff --git a/src/forge/Component/SiderBar.js b/src/forge/Component/SiderBar.js
index 61e6f85e3..b3900311b 100644
--- a/src/forge/Component/SiderBar.js
+++ b/src/forge/Component/SiderBar.js
@@ -161,7 +161,7 @@ function SiderBar(props) {
{/* /Gitlink/forgeplus */}
{failApply &&
{failApply}
}
-
+
)
diff --git a/src/forge/DevOps/Index.jsx b/src/forge/DevOps/Index.jsx
index 8feaf29d6..8cc6bc818 100644
--- a/src/forge/DevOps/Index.jsx
+++ b/src/forge/DevOps/Index.jsx
@@ -33,10 +33,17 @@ const Params = Loadable({
})
export default ((props)=>{
- const {isManager, project} = props;
+ const {isManager, project, projectDetail} = props;
const { projectsId, owner } = props.match.params;
const [jianmu_devops, setJianmu_devops] = useState(undefined);
+ useEffect(()=>{
+ if(projectDetail){
+ const { author, name} = projectDetail;
+ document.title = `引擎-${author.name}/${name}`;
+ }
+ }, [projectDetail])
+
useEffect(()=>{
// 请求simple接口获取jianmu_devops
const url = `/${owner}/${projectsId}/simple.json`;
diff --git a/src/forge/Main/CoderDepot.jsx b/src/forge/Main/CoderDepot.jsx
index aff47e0bf..fd6b6661b 100644
--- a/src/forge/Main/CoderDepot.jsx
+++ b/src/forge/Main/CoderDepot.jsx
@@ -41,7 +41,7 @@ function CoderDepot(props){
const [ fileInfo ,setFileInfo ] = useState(undefined);//文件内容信息
const [ zip_url , setZip_url ] = useState(undefined);
const [ tar_url , setTar_url ] = useState(undefined);
- const [ readOnly , setReadOnly] = useState(true);
+ const [ readOnly , setReadOnly] = useState(undefined);
const [ isSpin , setIsSpin] = useState(true);
const [ visible ,setVisible ] = useState(false);
const [ mainFlag ,setMainFlag ] = useState(false);
@@ -65,7 +65,6 @@ function CoderDepot(props){
//distribution:判断此用户是否可以创建发行版
const distribution = details && details.type != 2 && (details.permission === "Admin" || details.permission === "Owner" || details.permission === "Manager");
const { bannerList } = props;
-
useEffect(()=>{
if(bannerList && bannerList.length>0){
let a = bannerList.filter(i=>i.menu_name === "pulls");
@@ -102,6 +101,19 @@ function CoderDepot(props){
}
},[details])
+ useEffect(()=>{
+ // 设置网页标题
+ if(details){
+ const { author, name, description, default_branch} = details;
+ if(branchName && branchName !== default_branch){
+ // 处于某分支/标签
+ document.title = `${author.name}/${name}-${branchName}`;
+ }else{
+ document.title = `${author.name}/${name}${description?': '+description:''}`;
+ }
+ }
+ }, [treeValuePath, details, branchName])
+
useEffect(()=>{
if(treeValue){
setTreeValuePath(decodeURIComponent(treeValue).split('/'));
@@ -127,6 +139,7 @@ function CoderDepot(props){
},[projectsId,owner,pathname,defaultBranch])
useEffect(()=>{
+ setReadOnly(props.history.location.search.indexOf('edit') !== -1);
axios.get(`/${owner}/${projectsId}/releases.json`).then((result)=>{
if(result && result.data){
const release = {
@@ -289,12 +302,18 @@ function CoderDepot(props){
function onEdit(readOnly){
setReadOnly(readOnly);
setEditReadme(false);
+ const {history} = props;
+ if(readOnly){
+ history.push(history.location.pathname);
+ }else{
+ history.push(`${history.location.pathname}?edit`);
+ }
}
function ChangeFile(path, readOnly){
//点击直接跳转页面 加载一次路由
let enBranch = branchName || defaultBranch;
let checkvalue = turnbar(enBranch);
- props.history.push(`/${owner}/${projectsId}/tree/${checkvalue}/${path}`);
+ props.history.push(`/${owner}/${projectsId}/tree/${checkvalue}/${path}?edit`);
setType("file");
setEditReadme(true);
};
@@ -537,6 +556,7 @@ function CoderDepot(props){
currentBranch={branchName || defaultBranch}
branch={branchName || defaultBranch}
type={projectDetail.type}
+ treeValuePath={treeValuePath}
>
}
diff --git a/src/forge/Main/CoderRootCommit.js b/src/forge/Main/CoderRootCommit.js
index b3beef413..3df0bfef8 100644
--- a/src/forge/Main/CoderRootCommit.js
+++ b/src/forge/Main/CoderRootCommit.js
@@ -31,10 +31,20 @@ class CoderRootCommit extends Component{
}
componentDidMount=()=>{
+ this.updateDocumentTitle();
this.Init();
this.getBranchs();
}
+ // 更新网页标题
+ updateDocumentTitle(){
+ const {projectDetail} = this.props;
+ if(projectDetail && document.title.indexOf('提交-') === -1){
+ const { author, name} = projectDetail;
+ document.title = `提交-${author.name}/${name}`;
+ }
+ }
+
// 获取分支列表
getBranchs=()=>{
const { projectsId , owner } = this.props.match.params;
@@ -46,6 +56,7 @@ class CoderRootCommit extends Component{
}
componentDidUpdate=(prevProps)=>{
+ this.updateDocumentTitle();
const { location } = this.props;
const prevlocation = prevProps && prevProps.location;
if (location !== prevlocation) {
diff --git a/src/forge/Main/CoderRootFileDetail.js b/src/forge/Main/CoderRootFileDetail.js
index a50c30f4d..d73fdea01 100644
--- a/src/forge/Main/CoderRootFileDetail.js
+++ b/src/forge/Main/CoderRootFileDetail.js
@@ -27,6 +27,7 @@ class CoderRootFileDetail extends Component {
}
componentDidMount = () => {
+ this.updateDocumentTitle();
window.scrollTo(0, 0);
const { detail , mdFlag } = this.props;
this.setState({
@@ -36,6 +37,7 @@ class CoderRootFileDetail extends Component {
};
componentDidUpdate=(prevProps)=>{
+ this.updateDocumentTitle();
const { replace_content } = this.props && this.props.detail;
const prevcontent = prevProps.detail && prevProps.detail.replace_content;
if (replace_content && prevcontent) {
@@ -47,6 +49,16 @@ class CoderRootFileDetail extends Component {
}
}
+ // 更新网页标题
+ updateDocumentTitle(){
+ const {projectDetail, treeValuePath, location} = this.props;
+ const readOnly = location && location.search.indexOf('edit') === -1
+ if(projectDetail && treeValuePath){
+ const { author, name} = projectDetail;
+ document.title = `${readOnly ? treeValuePath.join('/') : '编辑'+treeValuePath[treeValuePath.length-1]}-${author.name}/${name}`;
+ }
+ }
+
languages_total = () => {
const { detail } = this.props;
const file_name = detail.path.split("/").pop().split(".").pop();
@@ -200,7 +212,6 @@ class CoderRootFileDetail extends Component {
render() {
const {
- readOnly,
detail,
current_user,
isManager,
@@ -210,6 +221,8 @@ class CoderRootFileDetail extends Component {
md,
type
} = this.props;
+ // 文件只读状态
+ const readOnly = this.props.history.location.search.indexOf('edit') === -1
const { language, languages, description } = this.state;
let flag = current_user && current_user.login && (isManager || isDeveloper);
const Option = Select.Option;
diff --git a/src/forge/Main/Detail.js b/src/forge/Main/Detail.js
index 02fce6360..6a165223c 100644
--- a/src/forge/Main/Detail.js
+++ b/src/forge/Main/Detail.js
@@ -403,7 +403,6 @@ class Detail extends Component {
forked_count: result.data.forked_count,
defaultBranch: result.data.default_branch
});
- document.title = `${result.data.author.name}/${result.data.name}${result.data.description?':'+result.data.description:''}`;
}
}
}).catch((error) => { })
diff --git a/src/forge/Main/Diff.jsx b/src/forge/Main/Diff.jsx
index 51eca8816..bb644fc03 100644
--- a/src/forge/Main/Diff.jsx
+++ b/src/forge/Main/Diff.jsx
@@ -49,13 +49,21 @@ const Infos = styled.div`
`;
//提交详情页
export default (props) => {
- const {match , history } = props;
+ const {match , history, projectDetail } = props;
const [data, setData] = useState({undefined});
const [commit, setCommit] = useState(undefined);
const [parents, setParents] = useState(undefined);
const [committer, setCommitter] = useState(undefined);
const [isSpin, setIsSpin] = useState(true);
const { sha , projectsId, owner } = match.params;
+
+ useEffect(()=>{
+ if(projectDetail){
+ const { author, name} = projectDetail;
+ document.title = `${commit && commit.message ? commit.message+'-' : ''}${sha}-${author.name}/${name}`;
+ }
+ }, [projectDetail, sha, commit])
+
useEffect(() => {
if (projectsId && owner && sha) {
const url = `/${owner}/${projectsId}/commits/${sha}.json`;
diff --git a/src/forge/Main/Index.js b/src/forge/Main/Index.js
index 087abecc0..c95fe5650 100644
--- a/src/forge/Main/Index.js
+++ b/src/forge/Main/Index.js
@@ -59,6 +59,7 @@ class Index extends Component {
this.getLanguage();
// this.getRecommandOri();
+ document.title='开源项目';
}
// 获取语言列表
diff --git a/src/forge/Main/projecthome/Index.jsx b/src/forge/Main/projecthome/Index.jsx
index 81cd8b0c8..227ed4457 100644
--- a/src/forge/Main/projecthome/Index.jsx
+++ b/src/forge/Main/projecthome/Index.jsx
@@ -24,6 +24,7 @@ function Index() {
useEffect(()=>{
getCate();
+ document.title='开源项目';
},[])
useEffect(()=>{
diff --git a/src/forge/Main/tag/Index.jsx b/src/forge/Main/tag/Index.jsx
index a80515aca..4c8beb065 100644
--- a/src/forge/Main/tag/Index.jsx
+++ b/src/forge/Main/tag/Index.jsx
@@ -18,6 +18,14 @@ function Tags(props) {
const [total,setTotal] =useState(0);
const [limit,setLimit] =useState(10);
const { projectsId, owner } = props.match.params;
+ const { projectDetail} = props;
+
+ useEffect(()=>{
+ if(projectDetail && document.title.indexOf('所有标签-') === -1){
+ const { author, name} = projectDetail;
+ document.title = `所有标签-${author.name}/${name}`;
+ }
+ }, [projectDetail])
useEffect(() => {
if (projectsId) {
diff --git a/src/forge/Main/tree/Index.jsx b/src/forge/Main/tree/Index.jsx
index 3f4bc0c06..f1b9b920b 100644
--- a/src/forge/Main/tree/Index.jsx
+++ b/src/forge/Main/tree/Index.jsx
@@ -20,6 +20,13 @@ function Index(props) {
getList();
},[])
+ useEffect(()=>{
+ if(projectDetail && document.title.indexOf('所有分支-') === -1){
+ const { author, name} = projectDetail;
+ document.title = `所有分支-${author.name}/${name}`;
+ }
+ }, [projectDetail])
+
const menu =(zip_url,tar_url)=> (