|
@@ -29,22 +29,42 @@ import RechargeChangeCoin from "../views/index/recharge/ChangeCoin.vue";
|
|
|
import Transfer from "../views/index/recharge/Transfer.vue";
|
|
import Transfer from "../views/index/recharge/Transfer.vue";
|
|
|
import TransferHistory from "../views/index/recharge/TransferHistory.vue";
|
|
import TransferHistory from "../views/index/recharge/TransferHistory.vue";
|
|
|
import UserAsset from "../views/asset/UserAsset.vue";
|
|
import UserAsset from "../views/asset/UserAsset.vue";
|
|
|
-
|
|
|
|
|
|
|
+import OTCMessageIndex from "@/views/asset/otc/message/Index.vue";
|
|
|
|
|
+import OTCOrderIndex from "@/views/asset/otc/order/Index.vue";
|
|
|
|
|
+import OTCTransactionIndex from "@/views/asset/otc/transaction/Index.vue";
|
|
|
|
|
+import OTCUserIndex from "@/views/asset/otc/user/Index.vue";
|
|
|
|
|
+import CloudCalculator from "@/views/index/cloudComputingPower/Calculator.vue";
|
|
|
|
|
+import StakingIndex from "@/views/index/staking/Index.vue";
|
|
|
|
|
+import StakingRules from "@/views/index/staking/Rules.vue";
|
|
|
|
|
+import StakingRecord from "@/views/index/staking/Record.vue";
|
|
|
|
|
+import OTCIndex from "@/views/asset/otc/Index.vue";
|
|
|
|
|
+import MyPower from "@/views/index/cloudComputingPower/MyPower.vue";
|
|
|
|
|
+import MiningOutput from "@/views/index/cloudComputingPower/MiningOutput.vue";
|
|
|
|
|
+import ElectricityRecharge from "@/views/index/cloudComputingPower/ElectricityRecharge.vue";
|
|
|
|
|
+import ElectricitySetting from "@/views/index/cloudComputingPower/ElectricitySetting.vue";
|
|
|
|
|
+import ElectricityBill from "@/views/index/cloudComputingPower/ElectricityBill.vue";
|
|
|
|
|
+import CloudMyOrder from "@/views/index/cloudComputingPower/MyOrder.vue";
|
|
|
|
|
+import CloudComPowerIndex from "@/views/index/cloudComputingPower/Index.vue";
|
|
|
|
|
+import ComboDetails from "@/views/index/cloudComputingPower/ComboDetails.vue";
|
|
|
|
|
+import RechargeHistory from "../views/index/recharge/RechargeHistory.vue";
|
|
|
|
|
+import WithdrawHistory from "../views/index/recharge/WithdrawHistory.vue";
|
|
|
|
|
+import FinancialIndex from "../views/index/financial/Index.vue";
|
|
|
|
|
+import FinancialBuy from "../views/index/financial/Buy.vue";
|
|
|
|
|
+import MyFinancial from "../views/index/financial/MyFinancial.vue";
|
|
|
|
|
|
|
|
import CommonFunctionsPopup from "@/views/bitcoin/CommonFunctionsPopup/CommonFunctionsPopup.vue"; // 子组件路径
|
|
import CommonFunctionsPopup from "@/views/bitcoin/CommonFunctionsPopup/CommonFunctionsPopup.vue"; // 子组件路径
|
|
|
import TradeRules from "@/views/bitcoin/CommonFunctionsPopup/GeneralLevel2/TradeRules.vue"; // 新建
|
|
import TradeRules from "@/views/bitcoin/CommonFunctionsPopup/GeneralLevel2/TradeRules.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/lever/TradeOptions.vue'; // 期权(占位)
|
|
|
|
|
-import TradeMargin from '@/views/bitcoin/lever/TradeMargin.vue';
|
|
|
|
|
-import Calculator from '../views/bitcoin/Calculator.vue' // 新建的计算器页面
|
|
|
|
|
-import TradeSettings from '@/views/bitcoin/CommonFunctionsPopup/GeneralLevel2/TradeSettings.vue'// 新建
|
|
|
|
|
-import OptionTrading from '@/views/bitcoin/lever/OptionTrading.vue'
|
|
|
|
|
-import AddressAuth from '@/views/user/AddressAuth.vue'
|
|
|
|
|
-import RelativeAuth from '@/views/user/RelativeAuth.vue'
|
|
|
|
|
-import LanguageSwitch from '@/views/user/LanguageSwitch.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/lever/TradeOptions.vue"; // 期权(占位)
|
|
|
|
|
+import TradeMargin from "@/views/bitcoin/lever/TradeMargin.vue";
|
|
|
|
|
+import Calculator from "../views/bitcoin/Calculator.vue"; // 新建的计算器页面
|
|
|
|
|
+import TradeSettings from "@/views/bitcoin/CommonFunctionsPopup/GeneralLevel2/TradeSettings.vue"; // 新建
|
|
|
|
|
+import OptionTrading from "@/views/bitcoin/lever/OptionTrading.vue";
|
|
|
|
|
+import AddressAuth from "@/views/user/AddressAuth.vue";
|
|
|
|
|
+import RelativeAuth from "@/views/user/RelativeAuth.vue";
|
|
|
|
|
+import LanguageSwitch from "@/views/user/LanguageSwitch.vue"; //语言国际化
|
|
|
|
|
|
|
|
const routes = [
|
|
const routes = [
|
|
|
{
|
|
{
|
|
@@ -82,34 +102,31 @@ const routes = [
|
|
|
meta: { title: "秒合约" },
|
|
meta: { title: "秒合约" },
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: 'options',
|
|
|
|
|
- name: 'TradeOptions',
|
|
|
|
|
|
|
+ path: "options",
|
|
|
|
|
+ name: "TradeOptions",
|
|
|
component: TradeOptions,
|
|
component: TradeOptions,
|
|
|
- meta: { title: '期权' },
|
|
|
|
|
|
|
+ meta: { title: "期权" },
|
|
|
},
|
|
},
|
|
|
|
|
|
|
|
- {
|
|
|
|
|
- path: "margin",
|
|
|
|
|
- name: "TradeMargin",
|
|
|
|
|
- component: TradeMargin,
|
|
|
|
|
- meta: {title: "杠杆"},
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- path: 'settings',
|
|
|
|
|
- name: 'TradeSettings',
|
|
|
|
|
- component: TradeSettings
|
|
|
|
|
- },
|
|
|
|
|
-
|
|
|
|
|
- ]
|
|
|
|
|
- },
|
|
|
|
|
- { path: 'calculator',
|
|
|
|
|
- name: 'calculator',
|
|
|
|
|
- component: Calculator },
|
|
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "margin",
|
|
|
|
|
+ name: "TradeMargin",
|
|
|
|
|
+ component: TradeMargin,
|
|
|
|
|
+ meta: { title: "杠杆" },
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "settings",
|
|
|
|
|
+ name: "TradeSettings",
|
|
|
|
|
+ component: TradeSettings,
|
|
|
|
|
+ },
|
|
|
|
|
+ ],
|
|
|
|
|
+ },
|
|
|
|
|
+ { path: "calculator", name: "calculator", component: Calculator },
|
|
|
{
|
|
{
|
|
|
- path: 'OptionTrading',
|
|
|
|
|
- name: 'OptionTrading',
|
|
|
|
|
- component: OptionTrading,
|
|
|
|
|
- meta: { title: '' }
|
|
|
|
|
|
|
+ path: "OptionTrading",
|
|
|
|
|
+ name: "OptionTrading",
|
|
|
|
|
+ component: OptionTrading,
|
|
|
|
|
+ meta: { title: "" },
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
path: "/assetIndex",
|
|
path: "/assetIndex",
|
|
@@ -124,103 +141,130 @@ const routes = [
|
|
|
],
|
|
],
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/AdvancedCertification',
|
|
|
|
|
- name: 'AdvancedCertification',
|
|
|
|
|
- component: () => import('@/views/user/AdvancedCertification.vue'),
|
|
|
|
|
- meta: { title: '' }
|
|
|
|
|
- },
|
|
|
|
|
|
|
+ path: "/AdvancedCertification",
|
|
|
|
|
+ name: "AdvancedCertification",
|
|
|
|
|
+ component: () => import("@/views/user/AdvancedCertification.vue"),
|
|
|
|
|
+ meta: { title: "" },
|
|
|
|
|
+ },
|
|
|
{
|
|
{
|
|
|
- path: '/PnLAnalysis',
|
|
|
|
|
- name: 'PnLAnalysis',
|
|
|
|
|
- component: () => import('@/views/bitcoin/lever/PnLAnalysis.vue'),
|
|
|
|
|
- meta: { title: '' }
|
|
|
|
|
|
|
+ path: "/PnLAnalysis",
|
|
|
|
|
+ name: "PnLAnalysis",
|
|
|
|
|
+ component: () => import("@/views/bitcoin/lever/PnLAnalysis.vue"),
|
|
|
|
|
+ meta: { title: "" },
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/detail',
|
|
|
|
|
- name: 'HelpCenter',
|
|
|
|
|
|
|
+ path: "/otcIndex",
|
|
|
|
|
+ name: "otcIndex",
|
|
|
|
|
+ component: OTCIndex,
|
|
|
|
|
+ children: [
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "",
|
|
|
|
|
+ name: "otcTransactionIndex",
|
|
|
|
|
+ component: OTCTransactionIndex,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/otcMessageIndex",
|
|
|
|
|
+ name: "otcMessageIndex",
|
|
|
|
|
+ component: OTCMessageIndex,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/otcOrderIndex",
|
|
|
|
|
+ name: "otcOrderIndex",
|
|
|
|
|
+ component: OTCOrderIndex,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/otcUserIndex",
|
|
|
|
|
+ name: "otcUserIndex",
|
|
|
|
|
+ component: OTCUserIndex,
|
|
|
|
|
+ },
|
|
|
|
|
+ ],
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/detail",
|
|
|
|
|
+ name: "HelpCenter",
|
|
|
// 记得创建这个 Detail.vue 文件
|
|
// 记得创建这个 Detail.vue 文件
|
|
|
- component: () => import('@/views/user/HelpCenter.vue')
|
|
|
|
|
|
|
+ component: () => import("@/views/user/HelpCenter.vue"),
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
// 动态路由,接收一个 id 参数
|
|
// 动态路由,接收一个 id 参数
|
|
|
- path: '/help/detail',
|
|
|
|
|
- name: 'HelpDetail',
|
|
|
|
|
- component: () => import('@/views/user/HelpDetail.vue')
|
|
|
|
|
|
|
+ path: "/help/detail",
|
|
|
|
|
+ name: "HelpDetail",
|
|
|
|
|
+ component: () => import("@/views/user/HelpDetail.vue"),
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/about',
|
|
|
|
|
- name: 'AboutUs',
|
|
|
|
|
- component: () => import('@/views/user/AboutUs.vue')
|
|
|
|
|
|
|
+ path: "/about",
|
|
|
|
|
+ name: "AboutUs",
|
|
|
|
|
+ component: () => import("@/views/user/AboutUs.vue"),
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/about/privacy',
|
|
|
|
|
- name: 'PrivacyPolicy',
|
|
|
|
|
- component: () => import('@/views/user/PrivacyPolicy.vue')
|
|
|
|
|
|
|
+ path: "/about/privacy",
|
|
|
|
|
+ name: "PrivacyPolicy",
|
|
|
|
|
+ component: () => import("@/views/user/PrivacyPolicy.vue"),
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/about/agreement',
|
|
|
|
|
- name: 'UserAgreement',
|
|
|
|
|
- component: () => import('@/views/user/UserAgreement.vue')
|
|
|
|
|
|
|
+ path: "/about/agreement",
|
|
|
|
|
+ name: "UserAgreement",
|
|
|
|
|
+ component: () => import("@/views/user/UserAgreement.vue"),
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/invite',
|
|
|
|
|
- name: 'InviteCenter',
|
|
|
|
|
- component: () => import('@/views/user/InviteCenter.vue') // 上面的组件
|
|
|
|
|
|
|
+ path: "/invite",
|
|
|
|
|
+ name: "InviteCenter",
|
|
|
|
|
+ component: () => import("@/views/user/InviteCenter.vue"), // 上面的组件
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/invite/poster',
|
|
|
|
|
- name: 'InvitePoster',
|
|
|
|
|
- component: () => import('@/views/user/InvitePoster.vue')
|
|
|
|
|
|
|
+ path: "/invite/poster",
|
|
|
|
|
+ name: "InvitePoster",
|
|
|
|
|
+ component: () => import("@/views/user/InvitePoster.vue"),
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/vip',
|
|
|
|
|
- name: 'VipCenter',
|
|
|
|
|
- component: () => import('@/views/user/VipCenter.vue')
|
|
|
|
|
|
|
+ path: "/vip",
|
|
|
|
|
+ name: "VipCenter",
|
|
|
|
|
+ component: () => import("@/views/user/VipCenter.vue"),
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/vip/rules',
|
|
|
|
|
- name: 'VipRules',
|
|
|
|
|
- component: () => import('@/views/user/VipRules.vue')
|
|
|
|
|
|
|
+ path: "/vip/rules",
|
|
|
|
|
+ name: "VipRules",
|
|
|
|
|
+ component: () => import("@/views/user/VipRules.vue"),
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/kyc/step1',
|
|
|
|
|
- name: 'KycForm',
|
|
|
|
|
- component: () => import('@/views/user/KycForm.vue') // 填写表单
|
|
|
|
|
|
|
+ path: "/kyc/step1",
|
|
|
|
|
+ name: "KycForm",
|
|
|
|
|
+ component: () => import("@/views/user/KycForm.vue"), // 填写表单
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/kyc/step2',
|
|
|
|
|
- name: 'KycUpload',
|
|
|
|
|
- component: () => import('@/views/user/KycUpload.vue') // 上传证件
|
|
|
|
|
|
|
+ path: "/kyc/step2",
|
|
|
|
|
+ name: "KycUpload",
|
|
|
|
|
+ component: () => import("@/views/user/KycUpload.vue"), // 上传证件
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/security',
|
|
|
|
|
- name: 'SecuritySettings',
|
|
|
|
|
- component: () => import('@/views/user/SecuritySettings.vue') // 核心页面
|
|
|
|
|
|
|
+ path: "/security",
|
|
|
|
|
+ name: "SecuritySettings",
|
|
|
|
|
+ component: () => import("@/views/user/SecuritySettings.vue"), // 核心页面
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
// 地址认证:复用同一个组件,通过 query 参数 type 来区分是 "home" 还是 "work"
|
|
// 地址认证:复用同一个组件,通过 query 参数 type 来区分是 "home" 还是 "work"
|
|
|
- path: '/auth/address',
|
|
|
|
|
- name: 'address-auth',
|
|
|
|
|
- component: AddressAuth
|
|
|
|
|
|
|
+ path: "/auth/address",
|
|
|
|
|
+ name: "address-auth",
|
|
|
|
|
+ component: AddressAuth,
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
// 亲属认证
|
|
// 亲属认证
|
|
|
- path: '/auth/relative',
|
|
|
|
|
- name: 'relative-auth',
|
|
|
|
|
- component: RelativeAuth
|
|
|
|
|
|
|
+ path: "/auth/relative",
|
|
|
|
|
+ name: "relative-auth",
|
|
|
|
|
+ component: RelativeAuth,
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/language',
|
|
|
|
|
- name: 'LanguageSwitch',
|
|
|
|
|
|
|
+ path: "/language",
|
|
|
|
|
+ name: "LanguageSwitch",
|
|
|
component: LanguageSwitch,
|
|
component: LanguageSwitch,
|
|
|
- meta: { title: '切换语言' }
|
|
|
|
|
|
|
+ meta: { title: "切换语言" },
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- path: '/basic-verify',
|
|
|
|
|
- name: 'BasicVerify',
|
|
|
|
|
- component: () => import('@/views/user/BasicVerify.vue'),
|
|
|
|
|
- meta: { title: '基础认证' }
|
|
|
|
|
- },
|
|
|
|
|
|
|
+ path: "/basic-verify",
|
|
|
|
|
+ name: "BasicVerify",
|
|
|
|
|
+ component: () => import("@/views/user/BasicVerify.vue"),
|
|
|
|
|
+ meta: { title: "基础认证" },
|
|
|
|
|
+ },
|
|
|
|
|
|
|
|
{
|
|
{
|
|
|
path: "/applyPermission",
|
|
path: "/applyPermission",
|
|
@@ -422,6 +466,91 @@ const routes = [
|
|
|
name: "userLoanIndex",
|
|
name: "userLoanIndex",
|
|
|
component: UserLoanIndex,
|
|
component: UserLoanIndex,
|
|
|
},
|
|
},
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/rechargeHistory",
|
|
|
|
|
+ name: "rechargeHistory",
|
|
|
|
|
+ component: RechargeHistory,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/withdrawHistory",
|
|
|
|
|
+ name: "withdrawHistory",
|
|
|
|
|
+ component: WithdrawHistory,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/financialIndex",
|
|
|
|
|
+ name: "financialIndex",
|
|
|
|
|
+ component: FinancialIndex,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/financialBuy",
|
|
|
|
|
+ name: "financialBuy",
|
|
|
|
|
+ component: FinancialBuy,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/myFinancial",
|
|
|
|
|
+ name: "myFinancial",
|
|
|
|
|
+ component: MyFinancial,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/cloudComPowerIndex",
|
|
|
|
|
+ name: "cloudComPowerIndex",
|
|
|
|
|
+ component: CloudComPowerIndex,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/comboDetails",
|
|
|
|
|
+ name: "comboDetails",
|
|
|
|
|
+ component: ComboDetails,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/myPower",
|
|
|
|
|
+ name: "myPower",
|
|
|
|
|
+ component: MyPower,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/miningOutput",
|
|
|
|
|
+ name: "miningOutput",
|
|
|
|
|
+ component: MiningOutput,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/electricityRecharge",
|
|
|
|
|
+ name: "electricityRecharge",
|
|
|
|
|
+ component: ElectricityRecharge,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/electricitySetting",
|
|
|
|
|
+ name: "electricitySetting",
|
|
|
|
|
+ component: ElectricitySetting,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/electricityBill",
|
|
|
|
|
+ name: "electricityBill",
|
|
|
|
|
+ component: ElectricityBill,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/cloudMyOrder",
|
|
|
|
|
+ name: "cloudMyOrder",
|
|
|
|
|
+ component: CloudMyOrder,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/cloudCalculator",
|
|
|
|
|
+ name: "cloudCalculator",
|
|
|
|
|
+ component: CloudCalculator,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/stakingIndex",
|
|
|
|
|
+ name: "stakingIndex",
|
|
|
|
|
+ component: StakingIndex,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/stakingRules",
|
|
|
|
|
+ name: "stakingRules",
|
|
|
|
|
+ component: StakingRules,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ path: "/stakingRecord",
|
|
|
|
|
+ name: "stakingRecord",
|
|
|
|
|
+ component: StakingRecord,
|
|
|
|
|
+ },
|
|
|
];
|
|
];
|
|
|
|
|
|
|
|
const router = createRouter({
|
|
const router = createRouter({
|