AngularJS - $transitions 是什么?
AngularJS - what is $transitions?
目前正在开发 AngularJS + NodeJS 应用程序,突然我看到了这段代码:
$transitions.onStart({exiting: 'orders.view'}, function(trans) {
Socket.emit('orders:leave', {id_order: trans.params('from').id_order});
});
帮我看看$transitions
午餐吃什么。
谢谢。
答案编辑后:
对于那些最终登陆这里的人来说,你基本上可以在那些过渡中做任何你想做的事情;包括退出X状态的时候做一些事情。
'use strict';
// Configuring the orders module
angular.module('orders').run(['Menus','MODULE_LIST', 'Authentication', '$transitions', 'Socket', '$templateCache',
function(Menus, MODULE_LIST, Authentication, $transitions, Socket, $templateCache) {
$transitions.onStart({exiting: 'orders.view'}, function(trans) {
alert('Alert function has stopped you from going further BEEP BOOP')
Socket.emit('orders:leave', {id_order: trans.params('from').id_order});
});
var stlViewPopoverHtml =
'<div>' +
'<img ng-src="{{url}}" height="{{height}}" width="{{width}}">' +
'</div>';
$templateCache.put('stl-preview-popover.html', stlViewPopoverHtml);
}
]);
这是 UI-路由器的一部分。您可以在此处找到文档:Transition Hooks
例如 $transitions.onStart
将注册一个转换挂钩,每当您从一种状态移动到另一种状态时,它就会触发提供的函数。在您的示例中,它只会在退出提供的状态时触发,在您的情况下,该状态为 orders.view
.
总结一下您提供的代码将执行的操作:退出 orders.view
状态时,一旦状态转换开始,就会触发 Socket.emit
。
目前正在开发 AngularJS + NodeJS 应用程序,突然我看到了这段代码:
$transitions.onStart({exiting: 'orders.view'}, function(trans) {
Socket.emit('orders:leave', {id_order: trans.params('from').id_order});
});
帮我看看$transitions
午餐吃什么。
谢谢。
答案编辑后:
对于那些最终登陆这里的人来说,你基本上可以在那些过渡中做任何你想做的事情;包括退出X状态的时候做一些事情。
'use strict';
// Configuring the orders module
angular.module('orders').run(['Menus','MODULE_LIST', 'Authentication', '$transitions', 'Socket', '$templateCache',
function(Menus, MODULE_LIST, Authentication, $transitions, Socket, $templateCache) {
$transitions.onStart({exiting: 'orders.view'}, function(trans) {
alert('Alert function has stopped you from going further BEEP BOOP')
Socket.emit('orders:leave', {id_order: trans.params('from').id_order});
});
var stlViewPopoverHtml =
'<div>' +
'<img ng-src="{{url}}" height="{{height}}" width="{{width}}">' +
'</div>';
$templateCache.put('stl-preview-popover.html', stlViewPopoverHtml);
}
]);
这是 UI-路由器的一部分。您可以在此处找到文档:Transition Hooks
例如 $transitions.onStart
将注册一个转换挂钩,每当您从一种状态移动到另一种状态时,它就会触发提供的函数。在您的示例中,它只会在退出提供的状态时触发,在您的情况下,该状态为 orders.view
.
总结一下您提供的代码将执行的操作:退出 orders.view
状态时,一旦状态转换开始,就会触发 Socket.emit
。