Зачем использовать this.get ('serviceName') вместо this.serviceName? - PullRequest
0 голосов
/ 27 февраля 2019

В Ember.JS, есть ли веская причина для этого:

import Service, { inject } from '@ember/service';

export default Service.extend({
ajax: inject(),
getAll() {
    return this.get('ajax').request(`api/users/`, {
        method: 'GET',
        contentType: 'application/json'
    });
}
});

В отличие от этого?

import Service, { inject } from '@ember/service';

export default Service.extend({
ajax: inject(),
getAll() {
    return this.ajax.request(`api/users/`, {
        method: 'GET',
        contentType: 'application/json'
    });
}
});

Второй метод выглядит чище ИМО, но яМне интересно, есть ли веская функциональная причина для использования .get () вместо прямой ссылки на сервис.

1 Ответ

0 голосов
/ 27 февраля 2019

будущее this.whateverProperty.

this.get было реализовано в то время, когда JS не хватало большого количества функций, а большая часть документации еще не обновлена.

официальные справочники по ember уже обновлены:

https://guides.emberjs.com/release/applications/services/#toc_accessing-services

, начиная с Ember 3.1, вы можете использовать встроенные средства получения везде.

...