设置离子范围的值,但不起作用

时间:2019-11-27 12:08:03

标签: angular ionic4

我的 var AllureReporter = require('jasmine-allure-reporter'); jasmine.getEnv().addReporter(new AllureReporter()); jasmine.getEnv().afterEach(function (done) { browser.takeScreenshot().then(function (png) { allure.createAttachment('Screenshot', function () { return new Buffer(png, 'base64') }, 'image/png')(); done(); 介于0到10之间,我将默认值设置为5:ion-range = 0且question.min = 10 question.max。步长为1(question.value = "5" = 1)。

question.step

但是范围选择器保持为0。 是否因为我将结果保存在<ion-item id="{{question.id}}" *ngSwitchCase=types.ratingScalePerso> <ion-range value="{{question.value}}" min="{{question.min}}" max="{{question.max}}" step="{{question.step}}" color="secondary" pin="true" [(ngModel)]="question.answer"> <ion-label slot="start">{{question.precisionMin}}</ion-label> <ion-label slot="end">{{question.precisionMax}}</ion-label> </ion-range> </ion-item> 中?如果是,我该怎么办? 谢谢

3 个答案:

答案 0 :(得分:1)

使用以下代码

在.html文件中:

<ion-item id="{{question.id}}">
  <ion-range [(ngModel)]='question.value' min="{{question.min}}" max="{{question.max}}" step="{{question.step}}"  color="secondary" pin="true" [(ngModel)]="question.answer">
    <ion-label slot="start">{{question.precisionMin}}</ion-label>
    <ion-label slot="end">{{question.precisionMax}}</ion-label>
  </ion-range>
</ion-item>

.ts中的示例数据数组

question: any = {
    id:1,
    value:5,
    min: 0,
    max:10,
    step:1,
    answer:'answer',
    precisionMin:0,
    precisionMax:0
  }

答案 1 :(得分:1)

您需要了解Angular的工作原理,所以

[(ngModel)]="question.answer"

实际上ngModel设置特定组件的值(包括范围)。 如果要使用 value 进行操作,则可以删除ngModel部分并设置[value]="precision.value"

https://ionic-v4-19uyfz.stackblitz.io/action-sheet

答案 2 :(得分:0)

根据Ionic 4文档,属性必须为number。您的question.value = "5"string

https://ionicframework.com/docs/api/range