我使用Angular 1.5 Components创建了一个应用程序。我通过resolve
参数向组件提供数据,这样我就可以显示同一组件中不同来源的任何数据。但我不明白,如何更改我的组件中的一些数据。
例如,我有一个用户服务,它通过API与用户协作。在我的状态下,我加载一个组件并使用方法Users.get()。我使用UI路由器。
//...
$stateProvider
.state('users', {
url: '/users',
component: 'formPage',
resolve: {
values: function(Users) {
return Users.get();
});
//...
//...
component('formPage', {
bindings: {
values: '<'
},
//...
我在此组件中有一个表单,想要更改数据。我希望在提交表单时调用Users.update()方法。但该组件对用户服务一无所知,这是正确的。
我如何指定该组件必须使用Users.update()来更新此状态下的数据?我将如何在提交表单时在组件中调用此方法?
答案 0 :(得分:1)
SELECT u1.*
FROM user u1
LEFT OUTER JOIN user u2
ON u1.originalID = u2.fakeID
WHERE u2.fakeID IS NULL
您可以将其称为resolve: {
values: function(Users) {
return Users.get();
},
onUpdate: function(){
return Users.update.bind(Users);
}
);
bindings: {
values: '<',
onUpdate: '<'
},