如果数据被删除并且没有写入任何内容,则将数据重新写入文本框

时间:2018-02-12 10:17:21

标签: javascript angularjs charts billboard.js

我有两个文本框,我可以在其中编写数值,用于获取图表中Y轴的最小值和最大值。

例如,如果我在min = 0max = 100上设置了值,则图表的Y轴将从0到100.如果我更改max = 50,则图表为Y轴渲染0到50。

问题是如果我删除了值并且没有写任何东西,图表就会消失。我想要做的是,如果删除了值并且之后没有写任何内容,则保留该值并且不对图表执行任何操作。

这是html:

<span class="min-max">
  Max:</br>
  <input type="number" ng-change="$ctrl.updateY()" ng-model="$ctrl.maxValue"></br>
  Min:</br>
  <input type="number" ng-change="$ctrl.updateY()" ng-model="$ctrl.minValue"></br>
</span>

这是js函数:

updateY() {
    const maxNumber = Number(this.maxValue);
    const minNumber = Number(this.minValue);
    this.lineView.chart.axis.range({max: {y: maxNumber}, min: {y: minNumber}});
}

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

由于Angular具有双向数据绑定功能,当用户删除框中的文本时,也会更改$scope中的值。

你_ 可以 _保留副本;也许可以使用onBeforeChange()onAfterChange()

但是 ,如果您说&#34;如果文字为空,请插入上一个值&#34;,那么您将混淆&amp;惹恼在插入新值之前删除了当前值的用户。

我建议您ng-sho/hide基于输入文字为空的消息,说明&#34;您无法看到任何图表,因为X轴值为空白&#34;