Я пытаюсь использовать Injectable в своем коде в приложении Ionic 2, и я получаю эту ошибку.Ionic 2 - Неожиданная ошибка в сервисе
Модуль сборки не удалось: SyntaxError: /home.js: Неожиданный токен (10:25)
export class HomePage {
constructor(myservice: WpService) {
^
this.service = myservice;
this.data = null;
}
Это мой код: (home.js файл).
import {Page} from 'ionic-framework/ionic';
import {WpService} from './wpservice';
@Page({
templateUrl: 'build/pages/home/home.html',
providers: [WpService]
})
export class HomePage {
constructor(myservice: WpService) {
this.service = myservice;
this.data = null;
}
retrieve() {
this.service.loadData();
setTimeout(() => {
this.data = this.service.getData();
console.log(this.data);
}, 5000);
}
}
и это файл wpservice:
import {Injectable} from 'angular2/core';
import {Http} from 'angular2/http';
import 'rxjs/Rx'
@Injectable
export class WpService {
constructor(http: Http) {
this.http = http;
this.data = null;
}
loadData() {
this.http.get('<some rest api>').subscribe(data => {
this.data = data.json()
});
}
getData() {
return this.data;
}
}
Как ни странно эта ошибка возникает только с февраля 26 вечера. До этого он работал нормально.
Я не могу точно сказать, что вызывает ошибку. Но я заметил некоторые проблемы: 1 у вас есть дополнительный '{' в конце файла wpservice. 2- ваш @Injectable >> должен быть @Injectable(). 3- Ваш код - это машинопись, но ваши файлы .js – Abdulrahman
@Abdulrahman: Большое вам спасибо; } была ошибкой при копировании/вставке моего кода из моего редактора, а Ionic 2 использует файлы js с ES6 (так же, как и машинопись), поэтому я не думаю, что это может быть проблемой здесь. –