Browse Source

更新标题和提现列表

master
torsenli 2 years ago
parent
commit
6245ca0894
  1. 8
      app.js
  2. 6
      i18n/lang/en.json
  3. 2
      i18n/lang/zh-CN.json
  4. 6
      i18n/lang/zh-TW.json
  5. 8
      manifest.json
  6. 489
      pages.json
  7. 780
      pages/assets/draw.vue
  8. 123
      pages/assets/records.vue
  9. 28
      pages/exchange/contract-history.vue
  10. 10
      pages/exchange/open-position.vue
  11. 2
      pages/income/index.vue

8
app.js

@ -12,12 +12,12 @@ if (process.env.NODE_ENV == 'production'||true) { //生产环境
// pc端地址
pcUrl:'https://xmg.xusexchange.com/',
// app名称
appName: 'XUSexchange',
appName: 'XUSCoins',
// 版本
version: '1.0.0',
// 移动端地址
mobile: 'https://app.xusexchange.com/',
down:"https://app.xusexchange.com/download/CINSCoin.html"
mobile: 'https://app.xuscoins.com/',
down:"https://app.xuscoins.com/download/CINSCoin.html"
};
} else { //开发环境
config = {
@ -52,4 +52,4 @@ if (process.env.NODE_ENV == 'production'||true) { //生产环境
// mobile: 'https://h5.7coin.in'
// };
}
export default config;
export default config;

6
i18n/lang/en.json

@ -9,7 +9,7 @@
"using": "payments using",
"crypto": "crypto",
"Why": "Why do you choose to buy",
"digital": "digital currency in XUSexchange",
"digital": "digital currency in XUSCoins",
"believe": "We believe Cryptolly is here to stay — and that a future worth building is one which opens its doors and invites everyone in ",
"help": "We help you make sense of the coins, the terms, the dense charts and market changes",
"Clarity": "Clarity",
@ -18,7 +18,7 @@
"convenient": "convenient",
"key": "One key transaction, more convenient operation",
"technology": "Our technology",
"XUSEXCHANGE": "XUSEXCHANGE adopts advanced technologies such as GSLB, distributed server cluster ,distributed storage, high speed memory trading engine with multiple machines, cold wallet, hot wallet with private key offline,etc.,to provide our customers with secure,stable and reliable digital asset trading services through multiple terminals such as web,mobile and desktop terminals ",
"XUSCoins": "XUSCoins adopts advanced technologies such as GSLB, distributed server cluster ,distributed storage, high speed memory trading engine with multiple machines, cold wallet, hot wallet with private key offline,etc.,to provide our customers with secure,stable and reliable digital asset trading services through multiple terminals such as web,mobile and desktop terminals ",
"guide": "Beginner's guide",
"Wear": "Wear an account",
"Get": "Register a trading account",
@ -794,7 +794,7 @@
"a9": "multiple",
"b0": "Are you sure you want to log out?",
"b1": "Sign in or register",
"b2": "Hi, welcome to XUSexchange",
"b2": "Hi, welcome to XUSCoins",
"b3": "amount",
"b4": "spot index ",
"b5": "Contract index",

2
i18n/lang/zh-CN.json

@ -750,7 +750,7 @@
"a9": "倍数",
"b0": "确定要退出登录吗?",
"b1": "登录或注册",
"b2": "Hi,欢迎使用XUSexchange",
"b2": "Hi,欢迎使用XUSCoins",
"b3": "量",
"b4": "现货指数",
"b5": "合约指数",

6
i18n/lang/zh-TW.json

@ -8,7 +8,7 @@
"using": "支付使用",
"crypto": "加密",
"Why": "你為什麼選擇購買",
"digital": "XUSEXCHANGE的數字貨幣",
"digital": "XUSCoins的數字貨幣",
"believe": "我們相信加密貨幣將一直存在--是一个值得建立的未來同時是一個敞開著并邀請每個人都加入的大門",
"help": "我們幫助你理解貨幣、條款、密集的圖表和市場變化",
"Clarity": "清晰度",
@ -17,7 +17,7 @@
"convenient": "方便",
"key": "一鍵交易,操作更方便",
"technology": "我們的技術",
"XUSEXCHANGE": "XUSEXCHANGE採用GSLB、分佈式存儲、多機高速內存交易引擎、冷錢包、離線私鑰熱錢包等先進技術,通過網絡、移動和台式終端等多個終端為客戶提供安全、穩定和可靠的數字資產交易服務",
"XUSCoins": "XUSCoins採用GSLB、分佈式存儲、多機高速內存交易引擎、冷錢包、離線私鑰熱錢包等先進技術,通過網絡、移動和台式終端等多個終端為客戶提供安全、穩定和可靠的數字資產交易服務",
"guide": "初學者指南",
"Wear": "記下來",
"Get": "注册交易帳戶",
@ -792,7 +792,7 @@
"a9": "倍數",
"b0": "確定要登出嗎?",
"b1": "登入或注册",
"b2": "Hi,歡迎使用XUSexchange",
"b2": "Hi,歡迎使用XUSCoins",
"b3": "量",
"b4": "現貨指數",
"b5": "合約指數",

8
manifest.json

@ -1,5 +1,5 @@
{
"name" : "XUSexchange",
"name" : "XUSCoins",
"appid" : "__UNI__88A589F",
"description" : "",
"versionName" : "1.0.0",
@ -7,7 +7,7 @@
"transformPx" : false,
"app-plus" : {
"compatible" : {
"ignoreVersion" : true //trueHBuilderX1.9.0
"ignoreVersion" : true //trueHBuilderX1.9.0
},
"nvueCompiler" : "uni-app",
"compilerVersion" : 3,
@ -112,7 +112,7 @@
"router" : {
"base" : "./"
},
"domain" : "https://app.xusexchange.com",
"title" : "XUSexchange"
"domain" : "https://app.xuscoins.com",
"title" : "XUSCoins"
}
}

489
pages.json

@ -1,243 +1,250 @@
{
"pages": [
{
"path": "pages/startPage/index"
},
{
"path": "pages/base/index",
"style": {
"app-plus": {
"bounce": "none"
}
}
},
{
"path": "pages/index/index"
},
{
"path": "pages/currency/index"
},
{
"path": "pages/currency/list"
},
{
"path": "pages/exchange/exchangeHis"
},
{
"path": "pages/exchange/contractHis"
},
{
"path": "pages/exchange/his"
},
{
"path": "pages/login/index"
},
{
"path": "pages/purchase/index"
},
{
"path": "pages/purchase/bill"
},
{
"path": "pages/reg/index"
},
{
"path": "pages/safe/forget-password"
},
{
"path": "pages/notice/detail"
},
{
"path": "pages/accountSettings/accountSettings"
},
{
"path": "pages/assets/recharge"
},
{
"path": "pages/assets/paypal"
},
{
"path": "pages/assets/draw"
},
{
"path": "pages/assets/address-list"
},
{
"path": "pages/assets/edit-address"
},
{
"path": "pages/invite/index"
},
{
"path": "pages/invite/level"
},
{
"path": "pages/commission/index"
},
{
"path": "pages/commission/revoke"
},
{
"path": "pages/auth/index"
},
{
"path": "pages/auth/primary"
},
{
"path": "pages/auth/senior"
},
{
"path": "pages/safe/index"
},
{
"path": "pages/safe/login-password"
},
{
"path": "pages/safe/phone"
},
{
"path": "pages/safe/google"
},
{
"path": "pages/safe/transaction-password"
},
{
"path": "pages/safe/email"
},
{
"path": "pages/notice/index"
},
{
"path": "pages/notice/msg-detail"
},
{
"path": "pages/option/index"
},
{
"path": "pages/transfer/index"
},
{
"path": "pages/transfer/bill"
},
{
"path": "pages/assets/bill"
},
{
"path": "pages/exchange/index"
},
{
"path": "pages/assets/account-bill"
},
{
"path": "pages/assets/currency-bill"
},
{
"path": "pages/help/index"
},
{
"path": "pages/help/detail"
},
{
"path": "pages/help/sort"
},
{
"path": "pages/list/list"
},
{
"path": "pages/option/delivery-detail"
},
{
"path": "pages/income/index"
},
{
"path": "pages/otc/send-ad"
},
{
"path": "pages/otc/order"
},
{
"path": "pages/otc/ad"
},
{
"path": "pages/otc/detail"
},
{
"path": "pages/otc/pays"
},
{
"path": "pages/otc/bind-pay"
},
{
"path": "pages/otc/bill"
},
{
"path": "pages/service/service"
},
{
"path": "pages/service/index",
"style": {
"navigationBarTitleText": "咨询客服",
"navigationStyle": "default",
"app-plus": {
"titleNView": {
}
}
}
},
{
"path": "pages/service/otc",
"style": {
"navigationBarTitleText": "otc",
"navigationStyle": "default",
"app-plus": {
"titleNView": {
}
}
}
},
{
"path": "pages/upgrade/index",
"style": {
"navigationStyle": "custom",
"app-plus": {
"animationType": "fade-in",
"background": "transparent",
"backgroundColor": "rgba(0,0,0,0)",
"popGesture": "none"
}
}
}
],
"globalStyle": {
"app-plus": {
"titleNView": false
},
"navigationBarTextStyle": "black",
"navigationBarTitleText": "XUSexchange",
"navigationBarBackgroundColor": "#007AFF",
"backgroundColor": "#FFFFFF"
},
"easycom": {
"autoscan": true,
"custom": {
"^van-(.*)": "@/wxcomponents/vant/$1/index.vue",
"v-button": "@/layout/vButton.vue",
"v-input": "@/layout/vInput.vue",
"v-header": "@/layout/vHeader.vue",
"v-code": "@/layout/vCode.vue",
"v-country": "@/layout/vCountry.vue",
"v-link": "@/layout/vLink.vue",
"v-notice-bar": "@/layout/vNoticeBar.vue",
"v-lang": "@/layout/vLang.vue",
"v-qr": "@/layout/vQr.vue",
"v-scroll": "@/layout/vScroll.vue",
"v-paging": "@/layout/vPaging.vue",
"v-curve": "@/layout/vCurve.vue",
"v-dropdwon": "@/layout/vDropdwon.vue",
"v-picker": "@/layout/vPicker.vue",
"v-page": "@/layout/vPage.vue",
"not-data": "@/layout/notData.vue",
"special-Banner": "@/layout/specialBanner.vue"
}
}
"pages": [
{
"path": "pages/startPage/index"
},
{
"path": "pages/base/index",
"style": {
"app-plus": {
"bounce": "none"
}
}
},
{
"path": "pages/index/index"
},
{
"path": "pages/currency/index"
},
{
"path": "pages/currency/list"
},
{
"path": "pages/exchange/exchangeHis"
},
{
"path": "pages/exchange/contractHis"
},
{
"path": "pages/exchange/his"
},
{
"path": "pages/login/index"
},
{
"path": "pages/purchase/index"
},
{
"path": "pages/purchase/bill"
},
{
"path": "pages/reg/index"
},
{
"path": "pages/safe/forget-password"
},
{
"path": "pages/notice/detail"
},
{
"path": "pages/accountSettings/accountSettings"
},
{
"path": "pages/assets/recharge"
},
{
"path": "pages/assets/paypal"
},
{
"path": "pages/assets/draw"
},
{
"path": "pages/assets/address-list"
},
{
"path": "pages/assets/edit-address"
},
{
"path": "pages/invite/index"
},
{
"path": "pages/invite/level"
},
{
"path": "pages/commission/index"
},
{
"path": "pages/commission/revoke"
},
{
"path": "pages/auth/index"
},
{
"path": "pages/auth/primary"
},
{
"path": "pages/auth/senior"
},
{
"path": "pages/safe/index"
},
{
"path": "pages/safe/login-password"
},
{
"path": "pages/safe/phone"
},
{
"path": "pages/safe/google"
},
{
"path": "pages/safe/transaction-password"
},
{
"path": "pages/safe/email"
},
{
"path": "pages/notice/index"
},
{
"path": "pages/notice/msg-detail"
},
{
"path": "pages/option/index"
},
{
"path": "pages/transfer/index"
},
{
"path": "pages/transfer/bill"
},
{
"path": "pages/assets/bill"
},
{
"path": "pages/exchange/index"
},
{
"path": "pages/assets/account-bill"
},
{
"path": "pages/assets/currency-bill"
},
{
"path": "pages/help/index"
},
{
"path": "pages/help/detail"
},
{
"path": "pages/help/sort"
},
{
"path": "pages/list/list"
},
{
"path": "pages/option/delivery-detail"
},
{
"path": "pages/income/index"
},
{
"path": "pages/otc/send-ad"
},
{
"path": "pages/otc/order"
},
{
"path": "pages/otc/ad"
},
{
"path": "pages/otc/detail"
},
{
"path": "pages/otc/pays"
},
{
"path": "pages/otc/bind-pay"
},
{
"path": "pages/otc/bill"
},
{
"path": "pages/service/service"
},
{
"path": "pages/service/index",
"style": {
"navigationBarTitleText": "咨询客服",
"navigationStyle": "default",
"app-plus": {
"titleNView": {
}
}
}
},
{
"path": "pages/service/otc",
"style": {
"navigationBarTitleText": "otc",
"navigationStyle": "default",
"app-plus": {
"titleNView": {
}
}
}
},
{
"path": "pages/upgrade/index",
"style": {
"navigationStyle": "custom",
"app-plus": {
"animationType": "fade-in",
"background": "transparent",
"backgroundColor": "rgba(0,0,0,0)",
"popGesture": "none"
}
}
},
{
"path": "pages/assets/records",
"style": {
"navigationBarTitleText": "",
"enablePullDownRefresh": false
}
}
],
"globalStyle": {
"app-plus": {
"titleNView": false
},
"navigationBarTextStyle": "black",
"navigationBarTitleText": "XUSCoins",
"navigationBarBackgroundColor": "#007AFF",
"backgroundColor": "#FFFFFF"
},
"easycom": {
"autoscan": true,
"custom": {
"^van-(.*)": "@/wxcomponents/vant/$1/index.vue",
"v-button": "@/layout/vButton.vue",
"v-input": "@/layout/vInput.vue",
"v-header": "@/layout/vHeader.vue",
"v-code": "@/layout/vCode.vue",
"v-country": "@/layout/vCountry.vue",
"v-link": "@/layout/vLink.vue",
"v-notice-bar": "@/layout/vNoticeBar.vue",
"v-lang": "@/layout/vLang.vue",
"v-qr": "@/layout/vQr.vue",
"v-scroll": "@/layout/vScroll.vue",
"v-paging": "@/layout/vPaging.vue",
"v-curve": "@/layout/vCurve.vue",
"v-dropdwon": "@/layout/vDropdwon.vue",
"v-picker": "@/layout/vPicker.vue",
"v-page": "@/layout/vPage.vue",
"not-data": "@/layout/notData.vue",
"special-Banner": "@/layout/specialBanner.vue"
}
}
}

780
pages/assets/draw.vue

@ -1,97 +1,121 @@
<template>
<v-page>
<v-header>
<template #title>
<view>
{{ $t("assets.b6") }}
<!-- <span class="color-theme-1">{{ coin }}</span> -->
</view>
</template>
</v-header>
<view class="layout-main">
<view class="coin border-b p-x-lg p-md d-flex justify-between m-t-md" @click="coinListShow=true">
<view class="fn-25 color-light">{{coin}}</view>
<view class="d-flex align-center">
{{$t('recharge.a0')}}<van-icon name="arrow" />
</view>
</view>
<v-page>
<v-header>
<template #title>
<view>
{{ $t("assets.b6") }}
<!-- <span class="color-theme-1">{{ coin }}</span> -->
</view>
</template>
<template #right>
<v-link :to="'/pages/assets/records?type='+type">
<van-icon class="fn-20 m-t-xs" name="todo-list-o" />
</v-link>
</template>
</v-header>
<view class="layout-main">
<view class="coin border-b p-x-lg p-md d-flex justify-between m-t-md" @click="coinListShow=true">
<view class="fn-25 color-light">{{ coin }}</view>
<view class="d-flex align-center">
{{ $t('recharge.a0') }}
<van-icon name="arrow"/>
</view>
</view>
<view class="bg-panel-3" style="min-height: 100%; padding-bottom: 220rpx;">
<view class="">
<view
class="d-flex flex-wrap justify-between align-center p-x-lg p-y-ms color-light"
v-if="coin=='USDT'"
>
<!-- <span>{{$t('assets.b7')}}</span> -->
<view class="group d-flex fn-12 color-light">
<!-- <view class="rounded-xs p-x-lg p-y-ms m-r-md"
:class="rechargeType==1?'bor-active':'bg-panel-3 border'"
size="mini"
@click="changeRechargeType(1)"
>OMNI</view> -->
<view class="rounded-xs p-x-lg p-y-ms m-r-md"
size="mini"
@click="changeRechargeType(2)"
:class="rechargeType==2?'bor-active':'bg-panel-3 border'"
>ERC20</view>
<view class="rounded-xs p-x-lg p-y-ms m-r-md"
size="mini"
@click="changeRechargeType(3)"
:class="rechargeType==3?'bor-active':'bg-panel-3 border'"
>TRC20</view>
<view class="">
<view
class="d-flex flex-wrap justify-between align-center p-x-lg p-y-ms color-light"
v-if="coin=='USDT'"
>
<!-- <span>{{$t('assets.b7')}}</span> -->
<view class="group d-flex fn-12 color-light">
<!-- <view class="rounded-xs p-x-lg p-y-ms m-r-md"
:class="rechargeType==1?'bor-active':'bg-panel-3 border'"
size="mini"
@click="changeRechargeType(1)"
>OMNI</view> -->
<view class="rounded-xs p-x-lg p-y-ms m-r-md"
size="mini"
@click="changeRechargeType(2)"
:class="rechargeType==2?'bor-active':'bg-panel-3 border'"
>ERC20
</view>
<view class="rounded-xs p-x-lg p-y-ms m-r-md"
size="mini"
@click="changeRechargeType(3)"
:class="rechargeType==3?'bor-active':'bg-panel-3 border'"
>TRC20
</view>
</view>
</view>
<view class="p-x-lg d-flex justify-between flex-wrap align-center p-y-xs">
<view class="color-light d-block w-max m-y-ms color-light fn-15">{{ $t("assets.b8") }}</view>
<v-input v-model="form.address" class="bg-form-panel-3 p-sm color-light w-max fn-13 rounded-xs" :placeholder="$t('assets.b9')">
<!--<template #right>-->
<!-- &lt;!&ndash; #ifdef H5 &ndash;&gt;-->
<!-- <v-link tag="span" :to="{path:'/pages/assets/address-list',query:{-->
<!-- from:'draw'-->
<!-- }}" class="color-light fn-20 h-20">-->
<!-- <van-icon class="color-theme-1" name="orders-o" />-->
<!-- </v-link>-->
<!-- &lt;!&ndash; #endif &ndash;&gt;-->
<!-- &lt;!&ndash; #ifndef H5 &ndash;&gt;-->
<!-- <van-icon class="color-theme-1" @click="saoma" name="scan" />-->
<!-- &lt;!&ndash; #endif &ndash;&gt;-->
<!--</template>-->
</v-input>
<view class="color-sell fn-12 m-t-xs">
{{$t('recharge.a5')}}
</view>
</view>
</view>
<view class="form bg-panel-3 p-x-lg">
<view class="d-flex align-center p-y-md justify-between color-light fn-15">
<span class="color-light">{{ $t("assets.c0") }}</span>
<span>{{ $t("assets.c1") }}{{ withdrawFee.usable_balance }}
</view>
</view>
<view class="p-x-lg d-flex justify-between flex-wrap align-center p-y-xs">
<view class="color-light d-block w-max m-y-ms color-light fn-15">{{ $t("assets.b8") }}</view>
<v-input v-model="form.address" class="bg-form-panel-3 p-sm color-light w-max fn-13 rounded-xs"
:placeholder="$t('assets.b9')">
<!--<template #right>-->
<!-- &lt;!&ndash; #ifdef H5 &ndash;&gt;-->
<!-- <v-link tag="span" :to="{path:'/pages/assets/address-list',query:{-->
<!-- from:'draw'-->
<!-- }}" class="color-light fn-20 h-20">-->
<!-- <van-icon class="color-theme-1" name="orders-o" />-->
<!-- </v-link>-->
<!-- &lt;!&ndash; #endif &ndash;&gt;-->
<!-- &lt;!&ndash; #ifndef H5 &ndash;&gt;-->
<!-- <van-icon class="color-theme-1" @click="saoma" name="scan" />-->
<!-- &lt;!&ndash; #endif &ndash;&gt;-->
<!--</template>-->
</v-input>
<view class="color-sell fn-12 m-t-xs">
{{ $t('recharge.a5') }}
</view>
</view>
</view>
<view class="form bg-panel-3 p-x-lg">
<view class="d-flex align-center p-y-md justify-between color-light fn-15">
<span class="color-light">{{ $t("assets.c0") }}</span>
<span>{{ $t("assets.c1") }}{{ withdrawFee.usable_balance }}
{{ coin }}</span>
</view>
<view class="d-flex align-end p-y-xs justify-between bg-form-panel-3 rounded-xs p-sm p-x-ms">
<v-input type="number" v-model="form.amount" :min="withdrawFee.withdrawal_min" :max="withdrawFee.withdrawal_max" class=" w-8/12 color-light fn-13" :placeholder="$t('assets.c2')"></v-input>
<view class="d-flex align-end">
<span class="unit fn-16 flex-shrink">{{ coin }}</span>
<view class="all color-theme-1 m-l-md flex-shrink" @click="form.amount = withdrawFee.usable_balance">{{ $t("assets.c3") }}</view>
</view>
</view>
<view class="d-flex align-center p-y-xs justify-between fn-13">
<span>{{$t('common.c1')}}</span>
<span class="color-light">{{ withdrawFee.withdrawal_min }} {{coin}}</span>
</view>
<view class="d-flex align-center p-y-xs m-t-ms justify-between color-light fn-15">
<span>{{ $t("assets.c4") }}</span>
<!-- <span class="color-light">{{ withdrawFee.withdrawal_fee }} {{coin}}</span> -->
</view>
<view class="d-flex align-end p-y-xs justify-between bg-form-panel-3 rounded-xs p-y-sm">
</view>
<view class="d-flex align-end p-y-xs justify-between bg-form-panel-3 rounded-xs p-sm p-x-ms">
<v-input type="number" v-model="form.amount" :min="withdrawFee.withdrawal_min"
:max="withdrawFee.withdrawal_max" class=" w-8/12 color-light fn-13"
:placeholder="$t('assets.c2')"></v-input>
<view class="d-flex align-end">
<span class="unit fn-16 flex-shrink">{{ coin }}</span>
<view class="all color-theme-1 m-l-md flex-shrink" @click="form.amount = withdrawFee.usable_balance">
{{ $t("assets.c3") }}
</view>
</view>
</view>
<view class="d-flex align-center p-y-xs justify-between fn-13">
<span>{{ $t('common.c1') }}</span>
<span class="color-light">{{ withdrawFee.withdrawal_min }} {{ coin }}</span>
</view>
<view class="d-flex align-center p-y-xs m-t-ms justify-between color-light fn-15">
<span>{{ $t("assets.c4") }}</span>
<!-- <span class="color-light">{{ withdrawFee.withdrawal_fee }} {{coin}}</span> -->
</view>
<view class="d-flex align-end p-y-xs justify-between bg-form-panel-3 rounded-xs p-y-sm">
<v-input v-model="coin=='USDT'&&rechargeType==3?withdrawFee.trc20:withdrawFee.withdrawal_fee" disabled
class="p-x-ms color-light w-max fn-13 rounded-xs" :placeholder="$t('assets.b9')">
<template #right>
{{ coin }}
</template>
</v-input>
</view>
<view class="d-flex align-center p-y-xs m-t-ms justify-between color-light fn-15">
<span>{{ $t("reg.a8") }}</span>
<!-- <span class="color-light">{{ withdrawFee.withdrawal_fee }} {{coin}}</span> -->
</view>
<view class="d-flex align-end p-y-xs justify-between bg-form-panel-3 rounded-xs p-y-sm">
<v-input type="password" v-model="form.password" class="p-x-ms color-light w-max fn-13 rounded-xs" :placeholder="$t('reg.a9')">
<v-input v-model="coin=='USDT'&&rechargeType==3?withdrawFee.trc20:withdrawFee.withdrawal_fee" disabled class="p-x-ms color-light w-max fn-13 rounded-xs" :placeholder="$t('assets.b9')">
<template #right>
{{coin}}
</template>
</v-input>
</view>
</v-input>
</view>
<view class="d-flex align-center p-y-xs m-t-ms justify-between color-light fn-15">
<span>{{ $t("reg.a8") }}</span>
<!-- <span class="color-light">{{ withdrawFee.withdrawal_fee }} {{coin}}</span> -->
@ -102,313 +126,349 @@
</v-input>
</view>
</view>
<view class="form bg-panel-3 p-x-lg p-y-md">
<ul class="fn-md rounded-md m-y-xs line-height-2">
<li>·{{ $t("assets.c5") }}</li>
<li>·{{ $t("assets.c6") }}</li>
<li>·{{ $t("assets.c7") }}</li>
</ul>
</view>
<view class="rounded-md m-b-lg" v-if="list.length">
<view class="title d-flex justify-between p-x-md p-y-xs align-center color-light">
<span class="fn-lg">{{ $t("assets.c8") }}</span>
</view>
<view class="p-x-md">
<table class="w-max">
<thead class="p-x-md">
<tr class="fn-sm p-x-md">
<th class="p-b-md fn-left p-l-md">{{ $t("assets.c9") }}</th>
<th class="p-b-md fn-left">{{ $t("assets.d0") }}</th>
<th class="p-b-md fn-right p-r-md">{{ $t("assets.c0") }}</th>
<th class="p-b-md fn-right p-r-md">{{$t('exchange.g3')}}</th>
</tr>
</thead>
<tbody>
<tr class="color-light trChange p-x-md rounded-md" v-for="item in list" :key="item.id">
<td class="p-y-xs p-l-md rounded-tl-sm rounded-bl-sm fn-sm">
{{ item.datetime | parseTime }}
</td>
<td>
<view>{{item.status_text}}</view>
</td>
<td>
{{ item.amount }}
<span class="color-default">({{ item.coin_name }})</span>
</td>
<td class="fn-right p-r-md rounded-tr-sm rounded-br-sm">
<v-button size="mini" v-if="item.status==0" type="danger" @click="cancelWithdraw(item)">{{$t('exchange.g4')}}</v-button>
</td>
</tr>
<tr v-if="loadMore">
<td colspan="3" class="fn-center p-xs link-active" @click="more">
{{ $t("assets.d4") }}
</td>
</tr>
</tbody>
</table>
</view>
</view>
<view class="bot w-max bg-panel-3 p-lg box-size">
<v-button class="w-max m-y-md rounded-xs" block type="yellow" @click="toDraw" ref="btn">{{ $t("assets.b6") }}</v-button>
</view>
</view>
</view>
<view class="form bg-panel-3 p-x-lg p-y-md">
<ul class="fn-md rounded-md m-y-xs line-height-2">
<li>·{{ $t("assets.c5") }}</li>
<li>·{{ $t("assets.c6") }}</li>
<li>·{{ $t("assets.c7") }}</li>
</ul>
</view>
<!-- <view class="rounded-md m-b-lg" v-if="list.length" style="padding-bottom: 100px !important;">
<view class="title d-flex justify-between p-x-md p-y-xs align-center color-light">
<span class="fn-lg">{{ $t("assets.c8") }}</span>
</view>
<view class="p-x-md">
<table class="w-max">
<thead class="p-x-md">
<tr class="fn-sm p-x-md">
<th class="p-b-md fn-left p-l-md">{{ $t("assets.c9") }}</th>
<th class="p-b-md fn-left">{{ $t("assets.d0") }}</th>
<th class="p-b-md fn-right p-r-md">{{ $t("assets.c0") }}</th>
<th class="p-b-md fn-right p-r-md">{{ $t('exchange.g3') }}</th>
</tr>
</thead>
<tbody>
<tr class="color-light trChange p-x-md rounded-md" v-for="item in list" :key="item.id">
<td class="p-y-xs p-l-md rounded-tl-sm rounded-bl-sm fn-sm">
{{ item.datetime | parseTime }}
</td>
<td>
<view>{{ item.status_text }}</view>
</td>
<td>
{{ item.amount }}
<span class="color-default">({{ item.coin_name }})</span>
</td>
<td class="fn-right p-r-md rounded-tr-sm rounded-br-sm">
<v-button size="mini" v-if="item.status==0" type="danger" @click="cancelWithdraw(item)">
{{ $t('exchange.g4') }}
</v-button>
</td>
</tr>
<tr v-if="loadMore">
<td colspan="3" class="fn-center p-xs link-active" @click="more">
{{ $t("assets.d4") }}
</td>
</tr>
</tbody>
</table>
</view>
</view> -->
<view class="bot w-max bg-panel-3 p-lg box-size">
<v-button class="w-max m-y-md rounded-xs" block type="yellow" @click="toDraw" ref="btn">{{
$t("assets.b6")
}}
</v-button>
</view>
</view>
</view>
<coin-list ref="coinList" v-model="coin" @close="coinListShow = false" v-show="coinListShow" />
<van-popup :show="secondaryShow" @close="secondaryShow=false" closeable close-on-popstate position="bottom" custom-style="height:40%">
<van-tabs class="m-t-lg p-t-lg" v-if="secondaryShow" :sticky="false" :active="form.code_type" @change="changeTab">
<van-tab title="Google" v-if="withdrawFee.google_status==1" :name="3">
<v-input class="border h-40 m-y-md m-x-lg p-x-md" type="number" :placeholder="$t('common.code')" v-model="form.code"></v-input>
</van-tab>
<van-tab :title="$t('login.a8')" v-if="withdrawFee.phone_status==1" :name="1">
<v-input class="border h-40 m-y-md m-x-lg p-x-md" type="number" :placeholder="$t('common.code')" v-model="form.code">
<template #right>
<v-code type="green-plain" url="/user/getCode" :data="{type:1}" ref="mobileCode"></v-code>
</template>
</v-input>
<coin-list ref="coinList" v-model="coin" @close="coinListShow = false" v-show="coinListShow"/>
<van-popup :show="secondaryShow" @close="secondaryShow=false" closeable close-on-popstate position="bottom"
custom-style="height:40%">
<van-tabs class="m-t-lg p-t-lg" v-if="secondaryShow" :sticky="false" :active="form.code_type" @change="changeTab">
<van-tab title="Google" v-if="withdrawFee.google_status==1" :name="3">
<v-input class="border h-40 m-y-md m-x-lg p-x-md" type="number" :placeholder="$t('common.code')"
v-model="form.code"></v-input>
</van-tab>
<van-tab :title="$t('login.a8')" v-if="withdrawFee.phone_status==1" :name="1">
<v-input class="border h-40 m-y-md m-x-lg p-x-md" type="number" :placeholder="$t('common.code')"
v-model="form.code">
<template #right>
<v-code type="green-plain" url="/user/getCode" :data="{type:1}" ref="mobileCode"></v-code>
</template>
</v-input>
</van-tab>
<van-tab :title="$t('login.a9')" v-if="withdrawFee.email_status==1" :name="2">
<v-input class="border h-40 m-y-md m-x-lg p-x-md" type="number" :placeholder="$t('common.code')" v-model="form.code">
<template #right>
<v-code type="green-plain" url="/user/getCode" :data="{type:2}" ref="emailCode"></v-code>
</template>
</v-input>
<view class="m-md"></view>
</van-tab>
</van-tabs>
<view class="m-md">
<v-button type="yellow" block class="w-max rounded-md" @click="draw">{{$t('common.confirm')}}</v-button>
</view>
</van-popup>
<van-toast id="van-toast" />
</v-page>
</van-tab>
<van-tab :title="$t('login.a9')" v-if="withdrawFee.email_status==1" :name="2">
<v-input class="border h-40 m-y-md m-x-lg p-x-md" type="number" :placeholder="$t('common.code')"
v-model="form.code">
<template #right>
<v-code type="green-plain" url="/user/getCode" :data="{type:2}" ref="emailCode"></v-code>
</template>
</v-input>
<view class="m-md"></view>
</van-tab>
</van-tabs>
<view class="m-md">
<v-button type="yellow" block class="w-max rounded-md" @click="draw">{{ $t('common.confirm') }}</v-button>
</view>
</van-popup>
<van-toast id="van-toast"/>
</v-page>
</template>
<script>
import coinList from "./coin-list";
import Wallet from "@/api/wallet";
import formData from "@/utils/class/date";
export default {
components: {
coinList,
},
data() {
return {
coinListShow: false,
coin: "",
rechargeType: 2,
form: {
coin_id: "",
amount: "",
address: "",
addressType: "",
code_type: 1,
components: {
coinList,
},
data() {
return {
coinListShow: false,
coin: "",
rechargeType: 2,
form: {
coin_id: "",
amount: "",
password:"",
address: "",
addressType: "",
code_type: 1,
code: '',
password: ''
},
withdrawFee: {},
list: [],
page: 1,
loadMore: true,
secondaryShow:false
};
},
withdrawFee: {},
list: [],
page: 1,
loadMore: true,
secondaryShow: false,
type: 'draw'
};
},
computed: {
activeCoin() {
if (!this.coin) return {};
return this.$refs.coinList.coinList.find(
(item) => item.coin_name == this.coin
);
},
computed: {
activeCoin() {
if (!this.coin) return {};
return this.$refs.coinList.coinList.find(
(item) => item.coin_name == this.coin
);
},
},
watch: {
coin(n) {
if (n) {
this.form.address = "";
if (this.coin != "USDT") {
this.rechargeType = 1;
} else {
this.rechargeType = 2;
}
this.withdrawalBalance();
}
},
watch: {
coin(n) {
if (n) {
this.form.address = "";
if (this.coin != "USDT") {
this.rechargeType = 1;
}else{
this.rechargeType = 2;
}
this.withdrawalBalance();
}
},
},
filters: {
parseTime(val) {
return formData.parseTime(val);
},
filters: {
parseTime(val) {
return formData.parseTime(val);
},
},
mounted() {
uni.$on('selectAddress', (e) => {
this.form.address = e
})
},
methods: {
saoma() {
let that = this;
uni.scanCode({
success: function (res) {
that.form.address = res.result;
}
});
},
mounted() {
uni.$on('selectAddress', (e) => {
this.form.address = e
})
changeRechargeType(idx) {
this.rechargeType = idx;
this.withdrawalBalance();
},
methods: {
saoma(){
let that = this;
uni.scanCode({
success: function(res) {
that.form.address = res.result;
}
});
},
changeRechargeType(idx) {
this.rechargeType = idx;
this.withdrawalBalance();
},
//
withdrawalBalance() {
let address_type=1
let data = {
coin_name: this.coin,
address_type:this.rechargeType
};
Wallet.withdrawalBalance(data).then((res) => {
// console.info(res)
this.withdrawFee = res.data;
});
},
//
toDraw(){
if(!this.form.address){
this.$toast(this.$t('assets.b9'))
return
}
if(!this.form.amount){
this.$toast(this.$t('assets.c2'))
return
}
//
withdrawalBalance() {
let address_type = 1
let data = {
coin_name: this.coin,
address_type: this.rechargeType
};
Wallet.withdrawalBalance(data).then((res) => {
// console.info(res)
this.withdrawFee = res.data;
});
},
//
toDraw() {
if (!this.form.address) {
this.$toast(this.$t('assets.b9'))
return
}
if (!this.form.amount) {
this.$toast(this.$t('assets.c2'))
return
}
if(!this.form.password){
this.$toast(this.$t('reg.a9'))
return
}
let data = this.withdrawFee
if (data.withdraw_switch == 1) {
this.secondaryShow = true
if (data.google_status == 1) {
this.form.code_type = 3;
} else if (data.phone_status == 1) {
this.form.code_type = 1;
this.$nextTick(() => {
this.$refs.mobileCode.send();
});
} else if (data.email_status == 1) {
this.form.code_type = 2;
this.$nextTick(() => {
this.$refs.emailCode.send();
});
}
let data = this.withdrawFee
if (data.withdraw_switch == 1) {
this.secondaryShow = true
if (data.google_status == 1) {
this.form.code_type = 3;
} else if (data.phone_status == 1) {
this.form.code_type = 1;
this.$nextTick(() => {
this.$refs.mobileCode.send();
});
} else if (data.email_status == 1) {
this.form.code_type = 2;
this.$nextTick(() => {
this.$refs.emailCode.send();
});
}
} else {
this.draw()
}
},
draw() {
this.form.addressType = this.rechargeType;
this.form.coin_id = this.activeCoin.coin_id;
Wallet.withdraw(this.form, {btn: this.$refs.btn})
.then((res) => {
this.secondaryShow = false
this.form.code = ''
if (res.code == 4001) {
this.$toast(res.message);
} else {
this.draw()
}
},
draw() {
this.form.addressType = this.rechargeType;
this.form.coin_id = this.activeCoin.coin_id;
Wallet.withdraw(this.form, { btn: this.$refs.btn })
.then((res) => {
this.secondaryShow = false
this.form.code=''
if(res.code=4001){
this.$toast(res.message);
}else{
this.$toast.success(this.$t("assets.d5") + "!");
this.form.amount=''
}
this.$toast.success(this.$t("assets.d5") + "!");
this.form.amount = ''
setTimeout(()=>{
uni.navigateTo({
url:'/pages/assets/records?type='+this.type
})
.catch(() => { });
},
reset() {
this.loadMore = true;
this.page = 1;
this.getWithdrawRecords();
},
more() {
this.page++;
this.getWithdrawRecords();
},
//
getWithdrawRecords() {
let data = {
page: this.page,
};
Wallet.withdrawalRecord(data).then((res) => {
if (res.data.current_page == 1) this.list = [];
this.list = [...this.list, ...res.data.data];
if (res.data.data.length < res.data.per_page) this.loadMore = false;
});
},
//
cancelWithdraw(item) {
Wallet.cancelWithdraw({ withdraw_id: item.id }).then(() => {
this.$toast(this.$t('exchange.g6'))
this.reset();
})
},
changeTab(ev) {
this.form.code_type = ev.detail.name
},
}, 1500)
// setTimeout(()=>{
// this.getWithdrawRecords();
// }, 2000)
// setTimeout(()=>{
// this.getWithdrawRecords();
// }, 3000)
}
})
.catch(() => {
});
},
reset() {
this.loadMore = true;
this.page = 1;
this.getWithdrawRecords();
},
more() {
this.page++;
this.getWithdrawRecords();
},
created() {
this.getWithdrawRecords();
//
getWithdrawRecords() {
let data = {
page: this.page,
};
Wallet.withdrawalRecord(data).then((res) => {
if (res.data.current_page == 1) this.list = [];
let list = [...this.list, ...res.data.data];//
this.list.splice(0,this.list.length,...list);
// this.list.push(...list);
console.log('length---------------',this.list.length, '页数:',res.data.current_page);
if (res.data.data.length < res.data.per_page) this.loadMore = false;
});
},
//
cancelWithdraw(item) {
Wallet.cancelWithdraw({withdraw_id: item.id}).then(() => {
this.$toast(this.$t('exchange.g6'))
this.reset();
})
},
changeTab(ev) {
this.form.code_type = ev.detail.name
},
},
created() {
this.getWithdrawRecords();
},
};
</script>
<style lang="scss" scoped>
.trChange:nth-child(2n-1) {
box-shadow: $shadow;
border-radius: $border-radius-xs;
td {
background: $panel-3;
padding-top: $padding-sm;
padding-bottom: $padding-sm;
}
box-shadow: $shadow;
border-radius: $border-radius-xs;
td {
background: $panel-3;
padding-top: $padding-sm;
padding-bottom: $padding-sm;
}
}
.bor-active{
border: 1px solid $theme-1;
position: relative;
overflow: hidden;
color: $theme-1;
.bor-active {
border: 1px solid $theme-1;
position: relative;
overflow: hidden;
color: $theme-1;
}
.bor-active::before{
content: '';
position: absolute;
right: 0;
bottom:-2px;
height: 0;
width: 0;
border: 10px solid;
border-color:transparent $theme-1 $theme-1 transparent;
text-align: center;
.bor-active::before {
content: '';
position: absolute;
right: 0;
bottom: -2px;
height: 0;
width: 0;
border: 10px solid;
border-color: transparent $theme-1 $theme-1 transparent;
text-align: center;
}
.bor-active::after{
content: '√';
position: absolute;
right: -4px;
bottom: -1px;
height: 15px;
width: 15px;
width: 20px;
transform: scale(0.7);
text-align: center;
color: white;
.bor-active::after {
content: '√';
position: absolute;
right: -4px;
bottom: -1px;
height: 15px;
width: 15px;
width: 20px;
transform: scale(0.7);
text-align: center;
color: white;
}
.border-b{
border-bottom: 5px solid $panel-3;
.border-b {
border-bottom: 5px solid $panel-3;
}
.autowidth{
margin: 0 auto;
.autowidth {
margin: 0 auto;
}
.bg-lin{
background: linear-gradient(to right,#f6c769,#f3b644);
.bg-lin {
background: linear-gradient(to right, #f6c769, #f3b644);
}
.color-black{
color: black;
.color-black {
color: black;
}
.bot{
position: fixed;
bottom: 0;
.bot {
position: fixed;
bottom: 0;
}
</style>

123
pages/assets/records.vue

@ -0,0 +1,123 @@
<template>
<v-page>
<v-header>
<template #title>
<view v-if="type=='draw'">
{{ $t("assets.c8") }}
</view>
<view v-if="type=='recharge'">
{{ $t('assets.f4') }}
</view>
</template>
</v-header>
<view class="layout-main">
<view class="bg-panel-3" style="height: 100%;">
<view class="rounded-md m-b-lg" v-if="list.length" style="padding-bottom: 100px !important;">
<view class="">
<table class="w-max">
<thead class="p-x-md">
<tr class="fn-sm p-x-md">
<th class="p-b-md fn-left p-l-md">{{ $t("assets.c9") }}</th>
<th class="p-b-md fn-left">{{ $t("assets.d0") }}</th>
<th class="p-b-md fn-right p-r-md">{{ $t("assets.c0") }}</th>
</tr>
</thead>
<tbody>
<tr class="color-light trChange p-x-md rounded-md" v-for="item in list" :key="item.id">
<td class="p-y-xs p-l-md rounded-tl-sm rounded-bl-sm fn-sm">
{{ item.datetime | parseTime }}
</td>
<td v-if="type=='draw'">
<view>{{ item.status_text }}</view>
</td>
<td v-if="type=='recharge'">
<view v-if="item.status==0">{{$t('assets.d1')}}</view>
<view v-if="item.status==1" class="color-buy">{{$t('assets.d2')}}</view>
<view v-if="item.status==2" class="color-sell">{{$t('assets.d3')}}</view>
</td>
<td class="fn-right p-r-md rounded-tr-sm rounded-br-sm">
{{ item.amount }}
<span class="color-default">({{ item.coin_name }})</span>
</td>
</tr>
<!-- <tr v-if="loadMore">
<td colspan="3" class="fn-center p-xs link-active" @click="more">
{{ $t("assets.d4") }}
</td>
</tr> -->
</tbody>
</table>
</view>
</view>
</view>
</view>
</v-page>
</template>
<script>
import Wallet from "@/api/wallet";
import formData from "@/utils/class/date";
export default {
data() {
return {
type: '',
list: [],
page: 1,
loadMore: true
}
},
filters: {
parseTime(val) {
return formData.parseTime(val);
},
},
methods: {
//
getWithdrawRecords() {
let data = {
page: this.page,
};
Wallet.withdrawalRecord(data).then((res) => {
if (res.data.current_page == 1) this.list = [];
let list = [...this.list, ...res.data.data];//
this.list.splice(0,this.list.length,...list);
// this.list.push(...list);
console.log('length---------------',this.list.length, '页数:',res.data.current_page);
if (res.data.data.length < res.data.per_page) this.loadMore = false;
});
},
//
depositHistory() {
let data = {
page: this.page,
};
Wallet.depositHistory(data).then((res) => {
if (res.data.current_page == 1) this.list = [];
this.list = [...this.list, ...res.data.data];
if (res.data.data.length < res.data.per_page) this.loadMore = false;
});
},
more() {
this.page++;
if(this.type=='draw'){
this.getWithdrawRecords();
}else if(this.type=='recharge'){
this.depositHistory();
}
},
},
onLoad(e) {
console.log('---------',e);
this.type = e.type;
if(e.type=='draw'){
this.getWithdrawRecords();
}else if(e.type=='recharge'){
this.depositHistory();
}
}
}
</script>
<style>
</style>

28
pages/exchange/contract-history.vue

@ -2,13 +2,13 @@
<v-paging :ajax="getHistoryEntrust" class="h-max" ref="vPag">
<template #box="list">
<van-empty v-if="!$list(list).length" description="" />
<!-- @click="showDetail(item)" -->
<div
class="item bg-panel-4 m-md rounded-sm box-shadow"
v-for="item in $list(list)"
:key="item.id"
>
<div
class="head d-flex align-center border-b p-x-md p-y-xs justify-between"
@ -56,7 +56,7 @@
<!-- <div class="row d-flex m-y-mini justify-between" v-if="item.profit">
<div class="label fn-sm">{{$t('contract.b4')}}</div>
<div class="color-light">
<v-button type="green-plain" class="m-l-xs rounded-xs" size="mini" plain
:to="{path:'/pages/income/index',query:{
symbol:item.symbol,
@ -69,7 +69,7 @@
position_side: 2,
}}"
>{{$t('contract.c8')}}</v-button>
<v-button type="green-plain" class="m-l-xs rounded-xs" size="mini" plain @click="canvasImage(item)">{{$t('contract.c8')}}</v-button>
</div>
</div> -->
@ -109,7 +109,7 @@
</van-popup>
<van-popup
class="share"
custom-style="width:100%;height:100%;background-color:transparent;padding-top:5%"
custom-style="width:100%;height:100%;background-color:transparent;padding-top:5%"
:show="canvasShow"
@close="canvasShow = false">
<view class="canvas" >
@ -184,7 +184,7 @@ export default {
arr.push(res)
}
})
var share_imgs=arr[Math.round(Math.random()*arr.length)];
if(!share_imgs||!this.detail){
this.$toast(this.$t('recharge.a6'))
@ -198,7 +198,7 @@ export default {
windowWidth=res.windowWidth
}
});
let myCanvas = uni.createCanvasContext('mycanvas', this);
let myCanvas = uni.createCanvasContext('mycanvas', this);
//
//
myCanvas.drawImage(share_imgs.bg_img,0,0,windowWidth,windowHeight);
@ -210,7 +210,7 @@ export default {
myCanvas.font = '12px Arial';//
myCanvas.fillText('全球合约领跑者',88,windowHeight*0.653);
myCanvas.font = '16px Arial';
myCanvas.fillText('XUSexchange',88,windowHeight*0.63);
myCanvas.fillText('XUSCoins',88,windowHeight*0.63);
myCanvas.font = '14px Arial';
myCanvas.setFillStyle('#717171')
myCanvas.fillText(i.symbol+'/USDT',25,windowHeight*0.53);
@ -220,7 +220,7 @@ export default {
myCanvas.fillText(this.cals(i.side,i.order_type),25,windowHeight*0.555);
myCanvas.fillText(ress.data.price1>1?this.omitTo(ress.data.price1,2):this.omitTo(ress.data.price1,4),uni.getStorageSync('language')=='zh-CN'?windowWidth*0.345:windowWidth*0.33,windowHeight*0.555);
myCanvas.fillText(ress.data.price2>1?this.omitTo(ress.data.price2,2):this.omitTo(ress.data.price2,4),uni.getStorageSync('language')=='zh-CN'?windowWidth*0.605:windowWidth*0.6,windowHeight*0.555);
myCanvas.textAlign = 'center';
myCanvas.setFillStyle('#000000')
myCanvas.font = '25px Arial';
@ -244,7 +244,7 @@ export default {
uni.setStorageSync('person-card',this.imgurl);
},
fail: () => {
}
});
});
@ -271,10 +271,10 @@ export default {
},
saveImage(){
// uni.showActionSheet({
// itemList: [this.$t('common.save')],
// itemList: [this.$t('common.save')],
// success: (res) => {
// if(res.tapIndex == 0){
// }
// },
// fail: function (res) {
@ -295,7 +295,7 @@ export default {
fail: () => {
uni.showToast({
title: this.$t('common.b4'),
duration: 2000
duration: 2000
});
}
});
@ -360,7 +360,7 @@ export default {
myCanvas.width=0
myCanvas.height=0
},
},
mounted() {
// this.generalizeInfo()

10
pages/exchange/open-position.vue

@ -1070,7 +1070,7 @@ export default {
myCanvas.font = '12px Arial';//
myCanvas.fillText('全球合约领跑者', 88, windowHeight * 0.653);
myCanvas.font = '16px Arial';
myCanvas.fillText('XUSexchange', 88, windowHeight * 0.63);
myCanvas.fillText('XUSCoins', 88, windowHeight * 0.63);
myCanvas.font = '14px Arial';
myCanvas.setFillStyle('#717171')
myCanvas.fillText(i.pair_name, 25, windowHeight * 0.53);
@ -1331,17 +1331,17 @@ export default {
Contract.getSymbolDetail(data).then((res) => {
console.info('res.data', res.data.default_lever, res.data.lever_rage)
this.unit_amount = res.data.unit_amount;
this.lever_rage = res.data.lever_rage.map((item) => ({
label: item,
value: item,
}));
let e={value:res.data.default_lever, label: res.data.default_lever}
this.openNum(e);
this.$emit("getSymbolDetail", res.data);
});
},
//

2
pages/income/index.vue

@ -98,7 +98,7 @@
<img class="img rounded-3 w-60 w-60" src="static/img/logo.png"/>
<view class="m-l-md">
<view class="fn-bold color-black fn-16">
XUSexchange
XUSCoins
</view>
<view class="fn-6 color-black">
全球合约领跑者

Loading…
Cancel
Save