2016-10-06 6 views
1

Я пишу простое приложение в ионном 2, но у меня есть проблема с anc (Angular compiler), потому что когда я запускаю ионный сервис, он дает мне предупреждение, но приложение работает на браузером, но когда я пытаюсь построить для своего телефона, он ломается, и процесс сборки вызывает ошибку.Ошибка ввода текста в Angular 2/Ionic 2

var tempResults: ResultModel = new ResultModel(currentOne.id, (me.res.length > 1) ? me.res[0] : me.res[0], (me.res.length > 1) ? me.res[1] : me.res[0], currentOne.question, currentOne.imagePath); 
    console.log(localforage.hasOwnProperty('result')) 
    localforage.getItem('results').then(data=> { 
     var allResponses: Array<ResultModel> = new Array<ResultModel>(); 
     if (data != null) { 

     var allResponses: Array<ResultModel> = <Array<ResultModel>>JSON.parse(data); 
      allResponses.push(tempResults); 
     localforage.setItem('results', JSON.stringify(allResponses)); 
     } else { 
     allResponses.push(tempResults); 
     localforage.setItem('results', JSON.stringify(allResponses)); 
     } 
    }); 

Линия, которая вызывает ошибку является: вар allResponses: Array => JSON.parse (данные);

И ошибка:

ngc error: Error: Error at C:/Users/.../result-item.ts:23:52: Argument of type '{}' is not assignable to parameter of type 'string'.

И я получаю ошибку типа в компиляторе, и я начинаю думать, что это может быть ошибка, в конце концов.

+0

'.then ((данные: строка) => { ', может быть, возможно, работать –

ответ

1

Согласно документации, json.parse() ожидает ввода строки в качестве ввода, я считаю, что ваш параметр данных является объектом.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse

+0

Да вы на самом деле правы.:/Дело в том, что она работает в нормальном режиме в браузере и правильно разборе Спасибо за очень быстрый ответ! –