2016-12-08 4 views
0

Я пытаюсь передать параметр числа в атрибут Alert (значение), но я не могу выполнить ... Я прохожу через цикл, но он дает ошибку. Тип свойства «значение» несовместим. Тип 'Номер' не может быть назначен на тип 'строка':Аргумент типа {значение: число} не присваивается параметру типа 'AlertInputOptions'

 alert.addInput({ 
     type: 'checkbox', 
     label: entry.CourseName, 
     value: entry.CourseID 
     }); 

Это весь код:

this.schoolAppUsers.loadAllCourses().subscribe(response => { 

    for (let entry of response) 
    { 

    alert.addInput({ 
     type: 'checkbox', 
     label: entry.CourseName, 
     value: entry.CourseID  
     }); 
     } 
    }) 
     alert.addButton('Cancel'); 
     alert.addButton({ 
     text: 'Okay', 
     handler: data => { 
     console.log('Checkbox data:', data); 
     this.testCheckboxOpen = false; 
     this.testCheckboxResult = data; 
     } 
    }); 
    alert.present().then(() => { 
    this.testCheckboxOpen = true; 
    }); 

Это loadAllCourses ответ() возвращает объекты, как это: [{ "CourseID": 1, «CourseName»: «Математика»}, {«CourseID»: 5, «CourseName»: «Английский язык»}]

может кто-то помочь! thanx

+2

ошибка довольно ясно. Число не является строкой. И если вы не уверены, правильно ли «data.CourseName», что заставляет вас думать, что случайные люди в Интернете будут знать? –

+0

вот ты иди, я больше не уверен ... теперь я ищу кого-то, кто поможет справиться с проблемой типа. – Yasir

+0

Преобразуйте 'entry.CourseID' в' string', прежде чем использовать его для создания 'AlertInputOptions'. Это число в вашем ответе JSON. –

ответ

0

У вас есть номер. То, что вы вызываете, ожидает строку. Это проблема.

Чтобы преобразовать число в строку в JavaScript, используйте toString метод:

value: entry.CourseID.toString() 
+0

Не пытайтесь редактировать ответы в качестве механизма последующей проверки. –

Смежные вопросы