import {createRouter, createWebHistory} from "vue-router"; import HomeIndex from "../views/HomeIndex.vue"; import ApplyPermission from "../views/index/ApplyPermission.vue"; import SplashScreen from "../views/index/SplashScreen.vue"; import RiskTips from "../views/index/RiskTips.vue"; import SearchIcon from "../views/index/SearchIcon.vue"; import Notification from "../views/notification/Index.vue"; import IndexUser from "../views/index/User.vue"; import UserCenter from "../views/index/UserCenter.vue"; import MarketDetails from "../views/market/details/Index.vue"; import HistoryIndex from "../views/asset/history/Index.vue"; import EntrustDetails from "../views/asset/history/EntrustDetails.vue"; import PositionDetails from "../views/asset/history/PositionDetails.vue"; import IcoIndex from "../views/index/ico/Index.vue"; import LoanIndex from "../views/index/loan/Index.vue"; import LoanRules from "../views/index/loan/Rules.vue"; import UserLoanIndex from "../views/user/loan/Index.vue"; import TradeLayout from '@/views/bitcoin/TradeLayout.vue'; // 新建的公共父组件 import TradeFutures from '@/views/bitcoin/TradeFutures.vue'; // (合约) import TradeSeconds from '@/views/bitcoin/lever/TradeSeconds.vue'; // 秒合约(占位) import TradeOptions from '@/views/bitcoin/TradeOptions.vue'; // 期权(占位) import TradeMargin from '@/views/bitcoin/lever/TradeMargin.vue'; import Calculator from '../views/bitcoin/Calculator.vue' // 新建的计算器页面 import CommonFunctionsPopup from '@/views/bitcoin/CommonFunctionsPopup/CommonFunctionsPopup.vue' // 子组件路径 import TradeSettings from '@/views/bitcoin/CommonFunctionsPopup/GeneralLevel2/TradeSettings.vue'// 新建 import TradeRules from '@/views/bitcoin/CommonFunctionsPopup/GeneralLevel2/TradeRules.vue' // 新建 const routes = [ { path: "/", name: "home", component: HomeIndex, }, { path: "/bitcoin", component: TradeLayout, // 而是布局组件 // 当访问 /bitcoin 时,自动重定向到 /bitcoin/contract redirect: '/bitcoin/contract', children: [ // 1. 核心交易子路由 { path: 'contract', name: 'TradeContract', component: TradeFutures, // 核心交易逻辑 meta: { title: '合约' } }, { path: 'seconds', name: 'TradeSeconds', component: TradeSeconds, meta: { title: '秒合约' } }, { path: 'options', name: 'TradeOptions', component: TradeOptions, meta: { title: '期权' } }, { path: 'margin', name: 'TradeMargin', component: TradeMargin, meta: { title: '杠杆' } }, { path: 'settings', name: 'TradeSettings', component: TradeSettings }, { path: 'calculator', name: 'calculator', component: Calculator }, ] }, { path: "/applyPermission", name: "applyPermission", component: ApplyPermission, }, { path: "/splashScreen", name: "splashScreen", component: SplashScreen, }, { path: "/riskTips", name: "riskTips", component: RiskTips, }, { path: "/searchIcon", name: "searchIcon", component: SearchIcon, }, { path: "/notification", name: "notification", component: Notification, }, { path: "/indexUser", name: "indexUser", component: IndexUser, }, { path: "/userCenter", name: "userCenter", component: UserCenter, }, { path: "/marketDetails", name: "marketDetails", component: MarketDetails, }, { path: "/historyIndex", name: "historyIndex", component: HistoryIndex, }, { path: "/entrustDetails", name: "entrustDetails", component: EntrustDetails, }, { path: "/positionDetails", name: "positionDetails", component: PositionDetails, }, { path: "/icoIndex", name: "icoIndex", component: IcoIndex, }, { path: "/loanIndex", name: "loanIndex", component: LoanIndex, }, { path: "/loanRules", name: "loanRules", component: LoanRules, }, { path: "/userLoanIndex", name: "userLoanIndex", component: UserLoanIndex, }, ]; const router = createRouter({ history: createWebHistory(process.env.BASE_URL), routes, }); export default router;