Я безуспешно пытаюсь привязать к компоненту angularjs 1.5 значение разрешения. В определении состояния я заменил общее значение свойств шаблона значением имени моего нового компонента. нравится:
.state('eventslogs.create', {
url: '/create',
template: '<addevent data="$resolve.addevent"></addevent>.',
resolve: {
addevent: newEventslog
},
data: {
roles: ['admin'],
pageTitle: 'Eventslogs Create'
}
})
NewEventslog - это функция, которая вводит одну из моих служб
newEventslog.$inject = ['EventslogsService'];
function newEventslog(EventslogsService) {
return new EventslogsService();
}
В своем контроллере я пробовал несколько способов, но ничего не работает
angular.module('eventslogs')
.component('addevent', {
templateUrl: 'addevent.client.component.view.html',
bindings: {
data: '<'
},
controller: function($scope, $element) {
var vm = this;
vm.eventslog = vm.data;
}
Но vm.eventslog всегда приводит к неопределенному значению, что не так с моим подходом? Если я использую «@» вместо «<» в привязках, vm.addevent приводит к строке со значением «$ resource.addevent», а не как экземпляр функции newEventslog.
Я использую ui-route версии 0.2.18
1 ответ
Не уверен, но попробуйте это внутри компонента
this.$onInit = () => {
vm.eventslog = vm.data;
}
Похожие вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript/JS) и его различных диалектах/реализациях (кроме ActionScript). Обратите внимание, что JavaScript — это НЕ Java. Включите все теги, относящиеся к вашему вопросу: например, [node.js], [jQuery], [JSON], [ReactJS], [angular], [ember.js], [vue.js], [typescript], [стройный] и т. д.