как добавить сервис в Ember App с помощью Typescript - PullRequest
0 голосов
/ 19 января 2020

Я следую этому руководству: https://v4.chriskrycho.com/2018/typing-your-ember-update-part-1.html

Здесь у меня есть служба, в которой есть только одна функция findAllContacts:

export default class ContactPicker extends Service {
  findAllContacts(): Promise<Contact[]> {
    return Promise.resolve(getContact());
  }
}

declare module '@ember/service' {
  interface Registry {
    'contact-picker': ContactPicker;
  }
}

и компонент телефонной книги :

import Component from '@ember/component';
import Computed from "@ember/object/computed";
import ContactPicker from '../services/contact-picker';
import { inject as service } from '@ember/service';
export default class PhonebookView extends Component {
  contactPicker: Computed<ContactPicker> = service('contact-picker');

  didInsertElement() {
    let contacts = this.contactPicker.findAllContacts(); //error
  }
};

но я получил ошибку при наборе this.contactPicker.findAllContacts (): Свойство 'findAllContacts' не существует для типа 'ComputedProperty'.ts (2339)

как внедрить сервис с Typescript?

...