2016-06-09 4 views
0

У меня есть, может быть, простая проблема. Ранее я работал с сервисами в Angular, но теперь столкнулся с проблемами с использованием проекта MEANJS Yeoman Generator. Мне нужно использовать данные массива из определенного модуля в другом модуле, чтобы я мог ng повторять это внутри представления другой модели.Использование углового обслуживания в MEANJS 0.4.2

Где именно я ввожу в массив внутри службы?

(function() { 
    'use strict'; 

    angular 
    .module('patients') 

    .factory('PatientsService', PatientsService); 

    PatientsService.$inject = ['$resource']; 

    function PatientsService($resource) { 
    return $resource('api/patients/:patientId', { 
     patientId: '@_id' 
    }, { 
     update: { 
     method: 'PUT' 
     } 
    }); 
    } 
})(); 

Я ничего не нашел внутри MEANJS Док до сих пор и ни здесь (только с более старых версий MEANJS с другой структурой службы).

Вот что я хотел бы принести внутри службы:

// Shows a List of useable avatars on Patient creation 
    $scope.avatars = [ 
     { value:'1', name: 'modules/patients/client/img/avatar/avatar1.png' }, 
     { value:'2', name: 'modules/patients/client/img/avatar/avatar2.png' }, 
     { value:'3', name: 'modules/patients/client/img/avatar/avatar3.png' }, 
     { value:'4', name: 'modules/patients/client/img/avatar/avatar4.png' }, 
     { value:'5', name: 'modules/patients/client/img/avatar/avatar5.png' }, 
     { value:'6', name: 'modules/patients/client/img/avatar/avatar6.png' } 
    ]; 

Я хотел бы использовать аватары в home.client просмотра PatientsService уже вводится внутри контроллера home.client.

ответ

0

Ваш сервис выше просто возвращает $resource. Вместо этого служба может вернуть простой старый объект Javascript (или класс), который имеет различные свойства. Среди них было бы свойство, содержащее множество аватаров, и другой, содержащий $resource:

(function() { 
    'use strict'; 

    angular 
    .module('patients') 

    .factory('PatientsService', PatientsService); 

    PatientsService.$inject = ['$resource']; 

    function PatientsService($resource) { 
    return { 
     avatars: [ {value: 0, ... } ], 
     resource: $resource('api/patients/:patientId', { 
      patientId: '@_id' 
     }, { 
      update: { 
      method: 'PUT' 
     } 
     }) 
    } 

    } 
})(); 
+0

О, я вижу, что это действительно легко, но я попытался это завершена неправильно! Большое спасибо – d8ta

+0

Знаете ли вы, если мне нужно что-то изменить, чтобы использовать $ resources во всем приложении. Кажется, что больше нельзя использовать ?! – d8ta

+0

git it yourself. Я думаю, вы можете использовать его с обоими. avatas как объект и ресурсы так же, как и после объекта. – d8ta

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