[Java Script][Vue.js]充值頁面

閱讀時間約 9 分鐘


<template>
<div id="charge">
<el-card class="box-card">
<ul class="msg-box">
<li>
<h4>充值</h4>
</li>
<li>
<h4 style="margin-bottom: 15px;">充值金額</h4>
<el-radio-group v-model="amountVal" @change="amountChange">
<el-radio border :label="''+ 20">20</el-radio>
<el-radio border :label="''+ 50">50</el-radio>
<el-radio border :label="''+ 100">100</el-radio>
<el-radio border :label="''+ 200">200</el-radio>
<el-radio border :label="''">自訂</el-radio>
</el-radio-group>
</li>
<li>
<h4 style="margin-bottom: 15px;">支付方式</h4>
<el-radio-group v-model="rechargeParams.paymentType" @change="paymentTypeChange">
<el-radio border :label="''+ 0">xxx</el-radio>
<el-radio border :label="''+ 1">xxxxx</el-radio>
</el-radio-group>
</li>
<li>
<h4 style="margin-bottom: 15px;">充值金額</h4>
<el-input :disabled="disabled" clearable v-model="rechargeParams.amount" placeholder="請輸入金額" style="width: 150px;"></el-input>
</li>
</ul>
<div style="text-align: center; margin-top: 30px;">
<el-button type="primary" @click="surePay">確認支付</el-button>
</div>
</el-card>
</div>
</template>

<script>
// 引入axios
import axios from 'axios'

export default {
data () {
return {
amountVal: '',
disabled: false,
// 充值交易參數
rechargeParams: {
'userId': this.$route.query.userId, // 取得用戶ID
'amount': '', // 金額
'currency': '', // 幣別
'paymentType': '1', // 支付方式[0:xxx,1:xxxxx]
}
}
},
methods: {
// 充值金額處理函數
amountChange: function (val) {
this.rechargeParams.amount = val
if (val == '') {
this.disabled = false
} else {
this.disabled = true
}
},
// 支付方式處理函數
paymentTypeChange: function (val) {
this.rechargeParams.paymentType = val
},
// 確認支付按鈕事件觸發函數
async surePay () {
// eslint-disable-next-line eqeqeq
if (this.rechargeParams.amount == '') {
this.$message.warning('請輸入金額!')
return
}
// 呼叫交易服務
const res = await axios.post('/api/account/chargeOrder', this.rechargeParams)
const {
code,
message,
data
} = res.data
if (code === 0) {
if (this.rechargeParams.paymentType == '0') {
this.$message.success('xxx支付')
} else if (this.rechargeParams.paymentType == '1') {
this.$message.success('xxxxx支付')
}
} else if (code === 401) {
this.$message.error(message)
this.$router.push({
name: 'login'
})
} else {
this.$message.error(message)
}
},
}
}
</script>

<style scoped>
#charge {
font-family: 'Avenir', Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: left;
color: #2c3e50;
margin-top: 0px;
}
/* 信息列表样式 */
.msg-box > li {
list-style: none;
border-bottom: 1px solid #c5c5c5;
padding: 20px 10px;
}
</style>
7會員
112內容數
嗨,我是一名程式設計師,會在這分享開發與學習紀錄。
留言0
查看全部
發表第一個留言支持創作者!
小黑與程式的邂逅 的其他內容
[Java Script]Vue.js
閱讀時間約 2 分鐘
[Java Script][Vue.js]顯示金額
閱讀時間約 4 分鐘
你可能也想看
創作者要怎麼好好休息 + 避免工作過量?《黑貓創作報#4》午安,最近累不累? 這篇不是虛假的關心。而是《黑貓創作報》發行以來可能最重要的一篇。 是的,我們這篇講怎麼補充能量,也就是怎麼休息。
Thumbnail
avatar
黑貓老師
2024-06-29
[ JavaScript 筆記] 變數 Variable & 值 Value 與他們的命名方式前言: 雖然前面有些定義還沒有完整的解釋,但還是後面再說吧, 誰想一直看理論啊(摔本子)
avatar
YAL
2024-04-25
[ JavaScript 筆記] JavaScript 能做什麼前言: 前一篇講了 JS 的定義,這裡來談談能用它來做什麼, 希望能限制在 500 字以內(這是我看文章的極限,超過字數就會開始分心(?))
avatar
YAL
2024-04-24
[ JavaScript 筆記] JavaScript 定義前言: 一直想要把自己的學習筆記整理整理,至少在寫下筆記的時候,也能釐清觀念。 結果拖延到現在,終於要提筆了,不知道能堅持多久(???)。
avatar
YAL
2024-04-23
JavaScript 有哪些資料型別? 怎麼辨別變數的資料型別?JS 資料型別分為兩大類,原始型別 (Primitive values) 和物件型別 (Objects)。
Thumbnail
avatar
阿榮
2024-04-09
JavaScript Class類別 (class) 是在 ES6 中引入,用來作為建立新物件的模板。它可以將程式碼封裝起來。
Thumbnail
avatar
阿榮
2024-03-27
JavaScript 程式札記 : 日期 Date在網頁開發中,時間與日期的處理是重要且基礎的部分,本文將介紹 JavaScript 中的日期的處理方法,並提供範例程式來協助你理解。
Thumbnail
avatar
梧笙
2024-01-29
【Javascript】檔案資料處理專案產生大量又瑣碎的作業做處理,眼下要從iReport的設定檔(jrxml)擷取每一項套印參數出來,提供給別人做Excel公式的資料表進行作業。
Thumbnail
avatar
2023-12-24
JavaScript 演義 #41: 群英戰呂布,英勇對陣JavaScript 演義 #41: 群英戰呂布,英勇對陣
Thumbnail
avatar
KH Huang
2023-12-20
Java Script自學經驗回顧來到學期2-3的階段,第一個作業就是打造餐廳清單。原本認為經過電影清單的學習經歷之後,對於打造餐廳清單應該也不會太過困難;沒想到我花了2個月的時間才把作業完整交出去。 在寫餐廳清單的初期,第一個碰到的問題就是首頁無法秀出餐廳評分這個選項。我試著參考其他同學的作品也改了版面的設計,卻始終無法出現餐廳評
avatar
奧莉薇
2023-02-28