[toc]
# 4.1 充值金币页开发(一)
## 4.1.1 实现充值金币页开发布局
1. 创建充值金币页面,页面名称为: `coin`
![](https://img.kancloud.cn/b3/72/b372e2e2b3f681f5125ce96354e6d3c1_534x788.png)
2. 在pages.json文件内配置充值金币页面的路径,并设置充值金币页面标题为`我的余额`
```
{
"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
{
"path": "pages/index/index",
"style": {
"app-plus": {
"titleNView": {
"titleAlign":"left",
"titleText":"直播",
"buttons":[
{
"type" : "menu"
}
]
}
}
}
},
{
"path": "pages/my/my",
"style": {
}
},
{
"path": "pages/live/live",
"style": {
"app-plus":{
"titleNView":false
}
}
},
{
"path": "pages/coin/coin",
"style": {
"navigationBarTitleText":"我的余额",
"navigationBarBackgroundColor":"#FFFFFF",
"navigationBarTextStyle":"black"
}
}
],
"globalStyle": {
"navigationBarTextStyle": "white",
"navigationBarTitleText": "九月直播",
"navigationBarBackgroundColor": "#8745FF",
"backgroundColor": "#8745FF"
},
"tabBar": {
"color":"#707070",
"selectedColor":"#8745FF",
"backgroundColor":"#ffffff",
"borderStyle":"black",
"midButton": {
"iconPath":"static/tabbar/min.png",
"iconWidth":"60px",
"height" : "65px"
},
"list": [
{
"iconPath":"static/tabbar/find.png",
"selectedIconPath":"static/tabbar/find-selected.png",
"text" : "发现",
"pagePath":"pages/index/index"
},
{
"iconPath":"static/tabbar/my.png",
"selectedIconPath":"static/tabbar/find-selected.png",
"text":"我的",
"pagePath":"pages/my/my"
}
]
}
}
```
3. 点击弹出礼物层的充值按钮跳转到充值金币页面
```
<! --给充值按钮添加点击事件 -->
<view style="height: 100rpx;" class="flex align-center justify-end">
<view @click="openCoin" class="bg-warning flex mr-3 align-center py-2 rounded px-2 justify-center" >
<text class="font">充值</text>
</view>
<view class="bg-main flex mr-3 align-center py-2 rounded px-2 justify-center" >
<text class="font text-white" @click="sendGift">发送</text>
</view>
</view>
//跳转到金币充值页面
openCoin(){
uni.navigateTo({
url: "../coin/coin"
})
}
```
4. 点击直播页面的金币图标时也跳转到充值金币页面
```
<! --给充值按钮添加点击事件 -->
<view @click="openCoin" style="height:80rpx; width: 80rpx; background-color: rgba(255,255,255,0.12);" class="flex mr-1 justify-center rounded-circle align-center">
<text class="iconfont text-white" style="font-size: 40px; "></text>
</view>
//跳转到金币充值页面
openCoin(){
uni.navigateTo({
url: "../coin/coin"
})
}
```
5. 实现标题底部的边框线,并设置整体的内边距
```
<template>
<view class="border-top border-light-secondary p-3">
</view>
</template>
<script>
</script>
<style>
</style>
```
6. 实现当前金币模块布局
```
<template>
<view class="border-top border-light-secondary p-3">
<!-- 当前金币 -->
<view class="rounded py-4 flex flex-column align-center justify-center bg-main">
<text class="text-white font-sm mb-2">当前金币</text>
<text class="font-weight-bold text-white" style="font-size: 60rpx;">50</text>
</view>
</view>
</template>
<script>
</script>
<style>
</style>
```
7. 实现分割线
```
<template>
<view class="border-top border-light-secondary p-3">
<!-- 当前金币 -->
<view class="rounded py-4 flex flex-column align-center justify-center bg-main">
<text class="text-white font-sm mb-2">当前金币</text>
<text class="font-weight-bold text-white" style="font-size: 60rpx;">50</text>
</view>
<!-- 分割线 -->
<view class="border-top border-light-secondary my-3"></view>
</view>
</template>
<script>
</script>
<style>
</style>
```
8. 实现选择充值金币布局
```
<template>
<view class="border-top border-light-secondary p-3">
<!-- 当前金币 -->
<view class="rounded py-4 flex flex-column align-center justify-center bg-main">
<text class="text-white font-sm mb-2">当前金币</text>
<text class="font-weight-bold text-white" style="font-size: 60rpx;">50</text>
</view>
<!-- 分割线 -->
<view class="border-top border-light-secondary my-3"></view>
<!-- 选择充值金币标题 -->
<view>
<text class="font-sm text-muted">请选择充值金币</text>
</view>
<!-- 选择充值金币列表 -->
<view class="flex flex-wrap" style="margin-left: -20rpx; margin-right: -20rpx;">
<view v-for="(item,index) in 6" style="width: 33.3%; box-sizing: border-box; " class=" p-2">
<view style="height: 130rpx;" class="border rounded flex flex-column align-center justify-center">
<view class="flex align-center">
<text class="iconfont text-warning mr-1"></text>
<text class="font-md font-weight-bold">10</text>
</view>
<text class="font text-light-muted">¥10</text>
</view>
</view>
</view>
</view>
</template>
<script>
</script>
<style>
</style>
```
- 第一章 项目介绍和准备
- 1.1 课程介绍
- 1.2 环境搭建和项目创建
- 1.3 引入全局样式
- 1.4 引入图标库
- 1.5 底部导航和凸起按钮配置
- 第二章 首页开发
- 2.1 首页开发(一)
- 2.2 首页开发(二)
- 第三章 直播间(用户端)开发
- 3.1 基础布局开发(一)
- 3.2 基础布局开发(二)
- 3.3 个人信息和观看情况
- 3.4 接收礼物组件(一) - 布局
- 3.5 接收礼物组件(二) - 自动滚动
- 3.6 接收礼物组件(三) - 自动消失
- 3.7 底部操作条
- 3.8 弹幕组件开发(一) - 输入框弹出层
- 3.9 弹幕组件开发(二) - 置于底部功能
- 3.10 弹幕组件开发(三) - 发送弹幕
- 3.11 送礼物弹框组件(一) - 布局
- 3.12 送礼物弹框组件(二) - 功能
- 第四章 充值金币页开发
- 4.1 充值金币页开发(一)
- 4.2 充值金币页开发(二)
- 第五章 直播间(主播端)开发
- 5.1 创建直播页 - 推流组件
- 5.2 创建直播页 - 布局(一)
- 5.3 创建直播页 - 布局(二)
- 5.4 创建直播页 - 镜头反转
- 5.5 创建直播页 - 切换画质
- 5.6 创建直播页 - 美颜和美白
- 5.7 关于退出创建直播页黑边问题
- 5.8 主播直播间(一)
- 5.9 主播直播间(二)
- 第六章 个人中心页面开发
- 6.1 个人中心页
- 第七章 egg.js基础
- 第八章 后台管理系统开发
- 8.1 创建项目和基础配置
- 第九章 交互和部署上线
- 9.1 登录注册交互实现
- 9.2 个人中心交互实现
- 9.3 退出登录以及初始化用户信息
- 9.5 权限验证
- 9.6 首页交互 - 上拉加载与下拉刷新
- 9.7 创建订单和微信支付(一)
- 9.8 创建订单和微信支付(二)
- 9.9 微信支付调试和充值页交互
- 9.10 直播间交互
- 9.11 socket.io安装与通讯(一)
- 9.12 socket.io安装和通讯(二)
- 9.13 加入直播间(一)
- 9.14 加入直播间(二)
- 9.15 加入直播间(三)
- 9.16 离开直播间
- 9.17 直播间实时在线用户列表
- 9.18 直播间实时弹幕功能
- 9.19 直播间送礼物功能
- 9.20 创建直播功能交互(一)
- 9.21 创建直播功能交互(二)
- 9.22 优化前端部分问题(一)
- 9.23 优化前端部分问题(二)
- 第七章 登录注册页面开发