113 lines
4.5 KiB
Dart
113 lines
4.5 KiB
Dart
import '../pages/center/centerPage.dart';
|
|
import '../pages/home/infoDetail.dart';
|
|
import '../pages/home/more.dart';
|
|
import '../pages/home/otherMine.dart';
|
|
import '../pages/login/login.dart';
|
|
import '../pages/login/register.dart';
|
|
import '../pages/login/login_code.dart';
|
|
import '../pages/login/forget_pwd.dart';
|
|
import '../pages/login/resetPwd.dart';
|
|
import '../pages/login/successPage.dart';
|
|
import '../pages/message/guanZhu.dart';
|
|
|
|
import '../pages/message/messageDetail.dart';
|
|
import '../pages/message/recieveLike.dart';
|
|
import '../pages/mine/account.dart';
|
|
import '../pages/mine/changeBackground.dart';
|
|
import '../pages/mine/clip.dart';
|
|
import '../pages/mine/drafts.dart';
|
|
import '../pages/mine/historyDetail.dart';
|
|
import '../pages/mine/like.dart';
|
|
import '../pages/mine/help/help.dart';
|
|
import '../pages/mine/history.dart';
|
|
import '../pages/mine/realName.dart';
|
|
import '../pages/mine/setting/aboutUs.dart';
|
|
import '../pages/mine/setting/checkAuthentication.dart';
|
|
import '../pages/mine/setting/myInfo.dart';
|
|
import '../pages/mine/setting/setting.dart';
|
|
import '../pages/mine/show.dart';
|
|
import '../pages/mine/work/workEdit.dart';
|
|
import '../pages/mine/work/works.dart';
|
|
import '../pages/mine/work/worksDetail.dart';
|
|
import '../pages/publish/choiceWorks.dart';
|
|
import '../pages/publish/orderDetail.dart';
|
|
import '../pages/publish/pay.dart';
|
|
import 'package:flutter/cupertino.dart';
|
|
import '../pages/tabs/tabs.dart';
|
|
|
|
// 配置路由
|
|
// 1.配置路由
|
|
Map routes = {
|
|
"/tabs": (context, {arguments}) => Tabs(
|
|
initialIndex: arguments != null && arguments is Map<String, dynamic>
|
|
? arguments['initialIndex']
|
|
: 0,
|
|
),
|
|
"/login": (context) => const LoginPage(),
|
|
"/register": (context) => const RegisterPage(),
|
|
"/login-code": (context, {arguments}) => LoginCodePage(arguments: arguments),
|
|
"/forget-pwd": (context, {arguments}) => ForgetPwdPage(arguments: arguments),
|
|
"/reset-pwd": (context, {arguments}) => ResetPwdPage(argument: arguments),
|
|
"/more": (context) => const MorePage(),
|
|
"/history": (context) => const HistoryPage(),
|
|
"/account": (context) => const AccountPage(),
|
|
"/drafts": (context) => const DraftsPage(),
|
|
"/choiceWorks": (context, {arguments}) =>
|
|
ChoiceWorksPage(data: arguments),
|
|
"/help": (context) => const HelpPage(),
|
|
"/setting": (context, {arguments}) => SettingPage(userInfo: arguments),
|
|
"/show": (context) => const ShowPage(),
|
|
"/infoDetail": (context, {arguments}) =>
|
|
InfoDetailPage( arguments: arguments),
|
|
"/otherMine": (context,{arguments}) => OtherMinePage(work: arguments),
|
|
"/center": (context) => const CenterPage(),
|
|
"/like": (context, {arguments}) => LikePage(initialTabIndex: arguments),
|
|
"/works": (context) => const WorksPage(),
|
|
"/historyDetail": (context, {arguments}) =>
|
|
HistoryDetailPage(order: arguments),
|
|
"/realName": (context) => const RealNamePage(),
|
|
"/myInfo": (context, {arguments}) => MyInfoPage(userInfo: arguments),
|
|
"/aboutUs": (context) => const AboutUsPage(),
|
|
"/change": (context, {arguments}) =>
|
|
ChangeBackgroundPage(imagePath: arguments),
|
|
"/checkAuthentication": (context) => const CheckAuthenticationPage(),
|
|
"/worksDetail": (context, {arguments}) => WorksDetailPage(id: arguments['id'],type: arguments['type']),
|
|
"/workEdit": (context, {arguments}) => WorkEditPage(draft: arguments),
|
|
"/clip": (context, {arguments}) => ClipPage(arguments: arguments),
|
|
"/messageDetail": (context, {arguments}) =>
|
|
MessageDetailPage(id: arguments),
|
|
'/guanZhu': (context) => GuanZhuPage(),
|
|
'/recevieLike': (context) => ReceiveLikePage(),
|
|
'/pay': (context, {arguments}) => PayPage(orderId: arguments['orderId'],totalPrice: arguments['totalPrice']),
|
|
'/orderDetail': (context, {arguments}) {
|
|
return OrderDetailPage(orderId: arguments);
|
|
},
|
|
'/success': (context, {arguments}) => SuccessPage(argument: arguments),
|
|
|
|
};
|
|
|
|
// 2.配置onGenerateRoute
|
|
var onGenerateRoute = (RouteSettings settings) {
|
|
// 统一处理
|
|
final String? name = settings.name;
|
|
|
|
///news 或者 /search
|
|
final Function? pageContentBuilder =
|
|
routes[name]; //Function (context) => const NewsPages()
|
|
if (pageContentBuilder != null) {
|
|
if (settings.arguments != null) {
|
|
// 2.MaterialPageRoute替换为CupertinoPageRoute
|
|
final Route route = CupertinoPageRoute(
|
|
builder: (context) =>
|
|
pageContentBuilder(context, arguments: settings.arguments));
|
|
return route;
|
|
} else {
|
|
final Route route = CupertinoPageRoute(
|
|
builder: (context) => pageContentBuilder(context),
|
|
);
|
|
return route;
|
|
}
|
|
}
|
|
return null;
|
|
};
|