diff --git a/project.private.config.json b/project.private.config.json
index 3c85d24..2d1aff5 100644
--- a/project.private.config.json
+++ b/project.private.config.json
@@ -3,6 +3,7 @@
"projectname": "EVA-Notify",
"setting": {
"compileHotReLoad": true,
- "urlCheck": false
+ "urlCheck": false,
+ "bigPackageSizeSupport": true
}
}
\ No newline at end of file
diff --git a/src/app.config.ts b/src/app.config.ts
index 0f19d97..6e6846e 100644
--- a/src/app.config.ts
+++ b/src/app.config.ts
@@ -9,6 +9,7 @@ export default defineAppConfig({
'pages/user/about/about',
'pages/user/report/report',
'pages/user/member/member',
+ 'pages/TicketDetail/TicketDetail',
],
window: {
backgroundTextStyle: 'light',
diff --git a/src/pages/TicketDetail/TicketDetail.config.ts b/src/pages/TicketDetail/TicketDetail.config.ts
new file mode 100644
index 0000000..a9ca517
--- /dev/null
+++ b/src/pages/TicketDetail/TicketDetail.config.ts
@@ -0,0 +1,3 @@
+export default definePageConfig({
+ usingComponents: {},
+});
diff --git a/src/pages/TicketDetail/TicketDetail.scss b/src/pages/TicketDetail/TicketDetail.scss
new file mode 100644
index 0000000..e69de29
diff --git a/src/pages/TicketDetail/TicketDetail.tsx b/src/pages/TicketDetail/TicketDetail.tsx
new file mode 100644
index 0000000..592dfe1
--- /dev/null
+++ b/src/pages/TicketDetail/TicketDetail.tsx
@@ -0,0 +1,25 @@
+import { Component, ReactNode } from 'react';
+import { View } from '@tarojs/components';
+import { getCurrentInstance } from '@tarojs/runtime';
+import Taro from '@tarojs/taro';
+import pt from '@/plain-text';
+
+export default class TicketDetail extends Component {
+ state = {
+ id: 0,
+ };
+ componentDidMount(): void {
+ const navBar = pt.get().navBar;
+ Taro.setNavigationBarTitle({
+ title: navBar.ticketDetail,
+ });
+ const { router } = getCurrentInstance();
+ const id = router?.params.id;
+ this.setState({
+ id: id,
+ });
+ }
+ render(): ReactNode {
+ return TicketDetail: {this.state.id};
+ }
+}
diff --git a/src/pages/user/about/about.tsx b/src/pages/user/about/about.tsx
index c9fb205..d18177c 100644
--- a/src/pages/user/about/about.tsx
+++ b/src/pages/user/about/about.tsx
@@ -1,8 +1,15 @@
import { Component, ReactNode } from 'react';
import { View } from '@tarojs/components';
+import Taro from '@tarojs/taro';
+import pt from '@/plain-text';
import './about.scss';
export default class SettingsPage extends Component {
+ componentDidMount(): void {
+ Taro.setNavigationBarTitle({
+ title: pt.get().navBar.user.about,
+ });
+ }
render(): ReactNode {
return ;
}
diff --git a/src/pages/user/inform/inform.tsx b/src/pages/user/inform/inform.tsx
index 4897103..01a3d5e 100644
--- a/src/pages/user/inform/inform.tsx
+++ b/src/pages/user/inform/inform.tsx
@@ -15,6 +15,13 @@ export default class InformPage extends Component {
isLoading: false,
isDisable: false,
};
+
+ componentDidMount(): void {
+ Taro.setNavigationBarTitle({
+ title: pt.get().navBar.user.inform,
+ });
+ }
+
handleChangePhone(phone: string) {
this.setState({
phone: phone,
diff --git a/src/pages/user/member/member.tsx b/src/pages/user/member/member.tsx
index 5c810a1..59082dc 100644
--- a/src/pages/user/member/member.tsx
+++ b/src/pages/user/member/member.tsx
@@ -14,6 +14,11 @@ export default class MemberPage extends Component {
isLoading: false,
isDisable: false,
};
+ componentDidMount(): void {
+ Taro.setNavigationBarTitle({
+ title: pt.get().navBar.user.member,
+ });
+ }
handleChangeStuid(stuid: string) {
this.setState({
stuid: stuid,
diff --git a/src/pages/user/myTicket/myTicket.tsx b/src/pages/user/myTicket/myTicket.tsx
index 6f2385c..8bdf5b5 100644
--- a/src/pages/user/myTicket/myTicket.tsx
+++ b/src/pages/user/myTicket/myTicket.tsx
@@ -14,6 +14,7 @@ import './myTicket.scss';
type FixStatus = 1 | 2 | 3 | 4 | 5;
class TicketListItem {
+ id: number;
brand: string;
model: string;
status: FixStatus;
@@ -21,11 +22,13 @@ class TicketListItem {
iconMap: Map;
constructor(
+ id: number,
brand: string,
model: string,
status: FixStatus,
createAt: moment.Moment,
) {
+ this.id = id;
this.brand = brand;
this.model = model;
this.status = status;
@@ -48,6 +51,11 @@ class TicketListItem {
extraText={tl.statusMap.get(this.status)}
arrow='right'
thumb={this.iconMap.get(this.status)}
+ onClick={() => {
+ Taro.navigateTo({
+ url: '/pages/TicketDetail/TicketDetail?id=' + this.id,
+ });
+ }}
/>
);
}
@@ -57,10 +65,13 @@ export default class SettingsPage extends Component {
state = {
loading: true,
success: false,
- fixList: [new TicketListItem('华硕', '天选3', 3, moment())],
+ fixList: [new TicketListItem(0, '', '', 1, moment())],
};
componentDidMount(): void {
+ Taro.setNavigationBarTitle({
+ title: pt.get().navBar.user.myTicket,
+ });
Taro.request({
url: getUrl('/user/mytickets'),
method: 'GET',
@@ -82,6 +93,7 @@ export default class SettingsPage extends Component {
fixList: res.data.data.list.map(
item =>
new TicketListItem(
+ item.id,
item.device,
item.deviceModel,
item.status,
diff --git a/src/pages/user/report/report.tsx b/src/pages/user/report/report.tsx
index 096bf74..dd8ed1c 100644
--- a/src/pages/user/report/report.tsx
+++ b/src/pages/user/report/report.tsx
@@ -13,6 +13,13 @@ export default class SettingsPage extends Component {
isLoading: false,
isDisable: false,
};
+
+ componentDidMount(): void {
+ Taro.setNavigationBarTitle({
+ title: pt.get().navBar.user.report,
+ });
+ }
+
handleChange(report: string) {
this.setState({
report,
diff --git a/src/plain-text/NavBarTitle.ts b/src/plain-text/NavBarTitle.ts
new file mode 100644
index 0000000..ea3c799
--- /dev/null
+++ b/src/plain-text/NavBarTitle.ts
@@ -0,0 +1,32 @@
+export interface NavBarTitle {
+ ticketDetail: string;
+ user: {
+ myTicket: string;
+ report: string;
+ member: string;
+ inform: string;
+ about: string;
+ };
+}
+
+export const navBarTitleZhCh: NavBarTitle = {
+ ticketDetail: '工单详情',
+ user: {
+ myTicket: '我的工单',
+ report: '意见反馈',
+ inform: '我的信息',
+ about: '关于我们',
+ member: '协会成员登录',
+ },
+};
+
+export const navBarTitleEnUs: NavBarTitle = {
+ ticketDetail: 'Ticket Detail',
+ user: {
+ myTicket: 'My Tickets',
+ report: 'Report',
+ inform: 'Information',
+ about: 'About us',
+ member: 'Member login',
+ },
+};
diff --git a/src/plain-text/index.ts b/src/plain-text/index.ts
index 87bd533..79765d1 100644
--- a/src/plain-text/index.ts
+++ b/src/plain-text/index.ts
@@ -8,6 +8,7 @@ import { AboutPageText, aboutPageEnUs, aboutPageZhCn } from './AboutPage';
import { ButtonText, buttonEnUs, buttonZhCn } from './Button';
import { MemberPageText, memberPageEnUs, memberPageZhCn } from './MemberPage';
import { TicketListText, ticketListEnUs, ticketListZhCn } from './TicketList';
+import { NavBarTitle, navBarTitleEnUs, navBarTitleZhCh } from './NavBarTitle';
interface TextRecord {
pageFooter: PageFooterText;
@@ -20,6 +21,7 @@ interface TextRecord {
button: ButtonText;
memberPage: MemberPageText;
ticketList: TicketListText;
+ navBar: NavBarTitle;
}
const textZhCn: TextRecord = {
@@ -33,6 +35,7 @@ const textZhCn: TextRecord = {
button: buttonZhCn,
memberPage: memberPageZhCn,
ticketList: ticketListZhCn,
+ navBar: navBarTitleZhCh,
};
const textEnUs: TextRecord = {
@@ -46,6 +49,7 @@ const textEnUs: TextRecord = {
button: buttonEnUs,
memberPage: memberPageEnUs,
ticketList: ticketListEnUs,
+ navBar: navBarTitleEnUs,
};
// type Lang = 'zh_CN' | 'en_US' | ...;