<template>
  <el-form ref="form" :model="form" label-width="120px">
    <el-form-item
      label="应纳税所得额:"
      prop="acTaxPiPersonCalculationSchedule.acTaxableIncome"
      style="width: 290px"
    >
      {{ acTaxableincome }}
    </el-form-item>
     <el-form-item
      label="税率/预扣率:"
      prop="acTaxPiPersonCalculationSchedule.taxRate"
      style="width: 290px"
    >
      20%
    </el-form-item>
     <el-form-item
      label="速算扣除数:"
      prop="acTaxPiPersonCalculationSchedule.quickCalculationDeduction"
      style="width: 290px"
    >
      {{ form.acTaxPiPersonCalculationSchedule.quickCalculationDeduction }}
    </el-form-item>
  </el-form>
</template>
 <script>
 export default {
   data() {
     return {
       form: {
         // 其他表单项省略...
         acTaxPiPersonCalculationSchedule: {
           acTaxableIncome: 0,
           quickCalculationDeduction: 0,
         },
       },
     };
   },
   computed: {
     acTaxableincome() {
       const { income, cost, subtotal, taxExemptIncome } = this.form;
       const taxableAmount = income - cost - subtotal - taxExemptIncome;
       return taxableAmount >= 0 ? taxableAmount : 0.0;
     },
   },
   watch: {
     'form.acTaxPiPersonCalculationSchedule.acTaxableIncome': function (newVal) {
       this.calquickCalculationDeduction(newVal);
     },
   },
   methods: {
     calquickCalculationDeduction(acTaxableIncome) {
       if (acTaxableIncome <= 36000) {
         this.form.acTaxPiPersonCalculationSchedule.quickCalculationDeduction = 3690;
       } else if (acTaxableIncome <= 144000) {
         this.form.acTaxPiPersonCalculationSchedule.quickCalculationDeduction = 14190;
       } else if (acTaxableIncome <= 300000) {
         this.form.acTaxPiPersonCalculationSchedule.quickCalculationDeduction = 24190;
       } else if (acTaxableIncome <= 420000) {
         this.form.acTaxPiPersonCalculationSchedule.quickCalculationDeduction = 44190;
       } else if (acTaxableIncome <= 660000) {
         this.form.acTaxPiPersonCalculationSchedule.quickCalculationDeduction = 64190;
       } else {
         this.form.acTaxPiPersonCalculationSchedule.quickCalculationDeduction = 109190;
       }
     },
   },
 };
 </script>
<p>并没有计算速算扣除数  速算扣除数没有变化固定3690 怎么拿到acTaxableincome计算速算扣除数
解决方法:根据给出的代码,计算速算扣除数的方法是在<code>calquickCalculationDeduction</code>中,根据<code>acTaxableIncome</code>的值来判断应该赋予哪个速算扣除数。</p>
<p>你提到速算扣除数没有变化固定为3690,这可能是因为<code>acTaxableIncome</code>的值没有被正确设置或者传递给<code>calquickCalculationDeduction</code>方法。</p>
<p>首先,检查<code>acTaxableIncome</code>的值是否正确地更新到<code>form.acTaxPiPersonCalculationSchedule.acTaxableIncome</code>。可以通过在<code>acTaxableIncome</code>的计算属性中添加<code>console.log(acTaxableAmount)</code>语句来确认值是否正确。</p>
<p>如果<code>acTaxableIncome</code>的值正确设置,那么问题可能在于<code>watch</code>中的监听方法没有被正确触发。你可以在<code>watch</code>方法中添加<code>console.log(newVal)</code>语句来确认是否被调用。</p>
<p>如果<code>watch</code>方法没有被触发,可能是因为属性路径不正确。确保属性路径<code>'form.acTaxPiPersonCalculationSchedule.acTaxableIncome'</code>与<code>form</code>对象的结构一致。</p>
<p>如果以上方法无法解决问题,你可以尝试在<code>mounted</code>钩子函数中手动调用<code>calquickCalculationDeduction</code>方法,以确保计算速算扣除数的方法被正确调用。</p>
<p>如果以上方法仍然无法解决问题,请提供更多代码或详细说明问题的上下文,以便更准确地帮助你解决问题。</p>
Vue.js 表单计算速算扣除数问题解决方法

原文地址: https://www.cveoy.top/t/topic/o9Qq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录