2014-12-22 22 views
5

Tôi có ứng dụng AngularJS đang sử dụng ui.router và plugin ui.router-extras, đặc biệt là mô-đun trạng thái dính. Điều này cho phép tôi lưu bộ nhớ cache DOM được hiển thị từ trạng thái gốc cụ thể xuống dưới.Sự kiện nào có thể được kích hoạt khi chuyển đổi ui.router sang trạng thái dính?

Vấn đề là khi tôi chuyển sang trạng thái mà tôi đã đặt là 'cố định' (tức là đã lưu trong bộ nhớ cache), không có sự kiện nào liên quan đến đám cháy của tiểu bang đó. OnEnter và Resolve có cả hai đã chạy và được lưu trữ, có vẻ như.

states.push({ name: 'root.planner',    url: 'planner', 
       abstract: true, 
       views: { 
       'planner-tab': { 
        controller: 'planner', 
        templateUrl: 'views/planner/_planner.html' 
       } 
       }, 
       sticky:true, 
       deepStateRedirect: true 
      }); 
states.push({ name: 'root.planner.home', url: '', 
       controller: 'planner.home', 
       templateUrl: 'views/planner/_planner.home.html', 
       resolve: { 
       'promiseDays': function(PlannerService){ 
        return PlannerService.getDays(); 
       } 
       }, 
       onEnter: function(StatusService){ 
       //set editable 
       StatusService.toggleEditIcon(true); 
       }, 
       onExit: function(StatusService){ 
       //set editable 
       StatusService.toggleEditIcon(false); 
       } 
      }); 

Điều tôi cần là cách cho phép OnEnter chạy hoặc một số sự kiện tương tự có thể được điều chỉnh cho từng tiểu bang. Lý tưởng nhất, điều này sẽ được bên trong cấu hình nhà nước ở trên (vì vậy tôi có thể tránh làm một kiểm tra nhà nước tên trên mỗi stateChangeSuccess, ví dụ), nhưng tôi mở để gợi ý.

Trả lời

4

Từ issue huy động trên GitHub, thì Đấng Christ T (nhà phát triển của ui-router-extras) helpfully đề nghị này:

"Trong khi nó không phải tài liệu, tiểu bang Chú ý sẽ gọi onInactivate và callbacks onReactivate Xem mã nguồn tại. những dòng sau:"

onInactivate

onReactivate

những hoạt động hoàn hảo cho tôi.

+1

liên kết để tìm kiếm trong repo thay vì tệp github hardcoded: https://github.com/christopherthielen/ui-router-extras/search?utf8=%E2%9C%93&q=onReactivate –

+0

Cảm ơn, @Michael. Điểm tốt. – Astravagrant

Các vấn đề liên quan