* Determine the reusability of an existing router view. * * @param {Directive} view * @param {Object} handler * @param {Transition} transition
(view, handler, transition)
| 1042 | */ |
| 1043 | |
| 1044 | function canReuse(view, handler, transition) { |
| 1045 | var component = view.childVM; |
| 1046 | if (!component || !handler) { |
| 1047 | return false; |
| 1048 | } |
| 1049 | // important: check view.Component here because it may |
| 1050 | // have been changed in activate hook |
| 1051 | if (view.Component !== handler.component) { |
| 1052 | return false; |
| 1053 | } |
| 1054 | var canReuseFn = getRouteConfig(component, 'canReuse'); |
| 1055 | return typeof canReuseFn === 'boolean' ? canReuseFn : canReuseFn ? canReuseFn.call(component, { |
| 1056 | to: transition.to, |
| 1057 | from: transition.from |
| 1058 | }) : true; // defaults to true |
| 1059 | } |
| 1060 | |
| 1061 | /** |
| 1062 | * Check if a component can deactivate. |
no test coverage detected