【问题标题】:How do I use one input to control the other in vuejs如何在 vuejs 中使用一个输入来控制另一个输入
【发布时间】:2019-08-08 14:44:28
【问题描述】:

如果评估费输入具有键入的值,我需要找到一种方法,基本上在评估期间输入中显示“每月”。

我已经尝试过绑定和组件,但无法成功。

            <div class="col-lg-6">
              <div class="form-group">
                <label>Assessment Fee <span class="note">C</span></label>
                <input type="text" class="form-control" v-model="document.assessments_fee" placeholder="$">
              </div>
            </div>
            <div class="col-lg-6">
              <div class="form-group">
                <label>Assessment Period <span class="note">C</span></label>
                <input type="text" class="form-control" v-model="document.assessments_period" placeholder="(per month/quarter/etc.)">
              </div>
            </div>



  data() {
    return {
      now: new Date().toISOString(),
      document: {
        assessments_fee: '',
        assessments_period: '',
      }
    }
  },



      components: {
        assessments_fee: function() {
          if(this.assessments_fee != null || '') this.assessments_period = "per Month";
        }
      },

【问题讨论】:

    标签: javascript vue.js inputbinding


    【解决方案1】:

    您可以为assessments_fee 创建一个观察者,所以当它不是null assessments_period= 'per Month' 时。

    你可以这样做:

    new Vue({
      el: '#app',
      data() {
        return {
          now: new Date().toISOString(),
          document: {
            assessments_fee: '',
            assessments_period: '',
          }
        }
      },
      computed: {
        assessmentsFee() {
          return this.document.assessments_fee
        }
      },
      watch: {
        assessmentsFee() {
          this.document.assessments_fee ?
          this.document.assessments_period = "per Month" :
          this.document.assessments_period = ""
        }
      }
    })
    <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
    <div id="app">
      <div class="col-lg-6">
        <div class="form-group">
          <label>Assessment Fee <span class="note">C</span></label>
          <input type="text" class="form-control" v-model="document.assessments_fee" placeholder="$">
        </div>
      </div>
      <div class="col-lg-6">
        <div class="form-group">
          <label>Assessment Period <span class="note">C</span></label>
          <input type="text" class="form-control" v-model="document.assessments_period" placeholder="(per month/quarter/etc.)">
        </div>
      </div>
    </div>

    【讨论】:

    • 我想让assessments_period 说“每月”,但我想我明白你的意思了
    • @johnconley 我更新了答案检查 sn-p .. 这就是你的目标吗?
    猜你喜欢
    • 1970-01-01
    • 2018-10-20
    • 2019-09-09
    • 2016-10-30
    • 1970-01-01
    • 2020-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多