站三界导航
首页 uniapp代码用uniapp编写一个房贷计算器代码

用uniapp编写一个房贷计算器代码

  • uniapp代码
  • 来源:站三界导航
  • 76阅读
  • 2023-05-20

贷款总额:根据房屋总价和首付比例计算;
贷款年限:按照贷款年限来计算每月还款额和总还款额;
贷款利率:不同的银行和不同的贷款产品利率不同,需要用户自己输入或者选择;
首付金额:根据首付比例计算;
每月还款额:根据公式计算;
总还款额:根据公式计算。
接下来我们可以开始创建项目了。打开HbuilderX,点击新建项目,选择uni-app,填写项目基本信息并确定。我们可以在前端使用Vue框架进行开发,后端可以使用JavaScript进行相应的计算。

接下来,我们需要设置页面布局。因为房贷计算器的页面比较简单,我们只需要一个主页即可。在pages文件夹下创建一个index.vue文件,然后在template标签内添加以下代码:

<view class="container">
  <view class="title">房贷计算器</view>
  <view class="item">
    <view class="label">房屋总价:</view>
    <input type="number" v-model="housePrice">
  </view>
  <view class="item">
    <view class="label">首付比例:</view>
    <input type="number" v-model="downPaymentPercent">
  </view>
  <view class="item">
    <view class="label">贷款年限:</view>
    <picker mode="selector" :range="{{yearsPicker}}" @change="onYearsChange">
      <view class="picker">{{years}}</view>
    </picker>
  </view>
  <view class="item">
    <view class="label">贷款利率:</view>
    <picker mode="selector" :range="{{ratesPicker}}" @change="onRatesChange">
      <view class="picker">{{rate}}%</view>
    </picker>
  </view>
  <view class="item">
    <view class="label">首付金额:</view>
    <input type="text" disabled :value="downPayment">
  </view>
  <view class="item">
    <view class="label">贷款总额:</view>
    <input type="text" disabled :value="loanAmount">
  </view>
  <view class="item">
    <view class="label">每月还款额:</view>
    <input type="text" disabled :value="monthlyPayment">
  </view>
  <view class="item">
    <view class="label">总还款额:</view>
    <input type="text" disabled :value="totalRepayment">
  </view>
  <button class="btn" @click="calculate">计算</button>
</view>
接着,我们需要在script标签中添加以下内容:

<script>
export default {
  name: 'index',
  data() {
    return {
      housePrice: '',   // 房屋总价
      downPaymentPercent: '',   // 首付比例
      years: 20,   // 贷款年限 - 默认20年
      rates: [3.25, 3.5, 3.75, 4],   // 贷款利率 - 按照银行标准填写
      rate: 3.25,   // 当前选择的贷款利率
      yearsPicker: [],   // 贷款年限选择器内容
      ratesPicker: [],   // 贷款利率选择器内容
      downPayment: '',   // 首付金额
      loanAmount: '',   // 贷款总额
      monthlyPayment: '',   // 每月还款额
      totalRepayment: ''   // 总还款额
    }
  },
  methods: {
    // 计算首付金额、贷款总额、每月还款额和总还款额
    calculate() {
      // 验证数据
      if (!this.housePrice || !this.downPaymentPercent || !this.years) {
        uni.showToast({
          title: '请填写完整信息!',
          icon: 'none'
        });
        return;
      }
      // 首付金额
      this.downPayment = (this.housePrice * this.downPaymentPercent / 100).toFixed(2);
      // 贷款总额
      this.loanAmount = (this.housePrice - this.downPayment).toFixed(2);
      // 每月还款额
      const n = this.years * 12;   // 还款期数
      const i = this.rate / 100 / 12;   // 月利率
      const monthlyPayment = (this.loanAmount * i * Math.pow(1 + i, n) / (Math.pow(1 + i, n) - 1)).toFixed(2);
      this.monthlyPayment = monthlyPayment;
      // 总还款额
      const totalRepayment = (monthlyPayment * n).toFixed(2);
      this.totalRepayment = totalRepayment;
    },
    // 贷款年限选择器改变事件
    onYearsChange(event) {
      this.years = this.yearsPicker[event.detail.value];
    },
    // 贷款利率选择器改变事件
    onRatesChange(event) {
      this.rate = this.ratesPicker[event.detail.value];
    }
  },
  created() {   // 初始化贷款年限、贷款利率选择器内容
    for (let i = 5; i <= 30; i += 5) {
      this.yearsPicker.push(i);
    }
    for (let rate of this.rates) {
      this.ratesPicker.push(rate);
    }
  }
}
</script>
最后,我们需要在style标签内添加以下代码:

<style>
.container {
  padding: 32rpx;
}
.title {
  font-size: 36rpx;
  font-weight: bold;
  margin-bottom: 32rpx;
  text-align: center;
}
.item {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-bottom: 24rpx;
}
.label {
  width: 200rpx;
  font-size: 30rpx;
}
.picker {
  font-size: 30rpx;
}
.btn {
  margin-top: 64rpx;
  width: 100%;
  background-color: #007aff;
  color: #fff;
  border-radius: 10rpx;
  font-size: 36rpx;
  padding: 16rpx 0;
}
input {
  width: 400rpx;
  height: 50rpx;
  padding-left: 20rpx;
  font-size: 28rpx;
  border: 1rpx solid #eee;
  border-radius: 10rpx;
  outline: none;
  text-align: right;
}
</style>
至此,我们已经完成了一个简单的房贷计算器。用户可以在输入框内填写需要计算的数值,点击计算按钮进行计算,得到首付金额、贷款总额、每月还款额和总还款额等信息。

本文结束
本文来自投稿,不代表站三界导航立场,如若转载,请注明出处:https://www.zhansanjie.com/article/details/43436.html

版权声明:

1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

2、本站仅提供信息发布平台,不承担相关法律责任。

3、若侵犯您的版权或隐私,请联系本站管理员删除。

4、本文由会员转载自互联网,如果您是文章原创作者,请联系本站注明您的版权信息。

分享
站三界导航
本站声明:本站严格遵守国家相关法律规定,非正规网站一概不予收录。本站所有资料取之于互联网,任何公司或个人参考使用本资料请自辨真伪、后果自负,站三界导航不承担任何责任。在此特别感谢您对站三界导航的支持与厚爱。