angularjs 1.5 中组件控制器中的访问解析
access resolve in component controller in angularjs 1.5
我正在尝试将解析值绑定到 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-路由版本 0.2.18
不确定,但在组件内部试试这个
this.$onInit = () => {
vm.eventslog = vm.data;
}
我正在尝试将解析值绑定到 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-路由版本 0.2.18
不确定,但在组件内部试试这个
this.$onInit = () => {
vm.eventslog = vm.data;
}