Skip to content

Make _ready wait for all bindings to resolve. #184

@pencilcheck

Description

@pencilcheck

Both my actions have {{ if Volt.current_user }} {{ end }} surrounding the content of the section. If the viewbinding in question for the action is called last, the jquery code inside action_ready will work, but if it is not the last call the jquery code will not work as there are no DOM to work with.

Need a way to force section code to be called last after its own bested bindings are called.

To confirm, I inserted a puts inside class ControllerHandler's call_action method to print out action call sequence

Below is the call sequence for index action, the working action


2015-05-03 22:39:56.577 page.js:12672 calling action index_ready

2015-05-03 22:39:56.581 page.js:12672 calling action topbar

2015-05-03 22:39:56.605 page.js:12672 calling action topbar_ready

2015-05-03 22:39:56.616 page.js:12672 calling action index

2015-05-03 22:39:56.632 page.js:12672 calling action modal

2015-05-03 22:39:56.647 page.js:12672 calling action modal_ready

2015-05-03 22:39:57.372 page.js:12672 calling action nav

2015-05-03 22:39:57.375 page.js:12672 calling action nav_group

2015-05-03 22:39:57.383 page.js:12672 calling action nav_item

2015-05-03 22:39:57.387 page.js:12672 calling action nav_item_ready

2015-05-03 22:39:57.391 page.js:12672 calling action nav_item

2015-05-03 22:39:57.394 page.js:12672 calling action nav_item_ready

2015-05-03 22:39:57.397 page.js:12672 calling action nav_item

2015-05-03 22:39:57.401 page.js:12672 calling action nav_item_ready

2015-05-03 22:39:57.405 page.js:12672 calling action nav_group_ready

2015-05-03 22:39:57.409 page.js:12672 calling action nav_group

2015-05-03 22:39:57.415 page.js:12672 calling action nav_item

2015-05-03 22:39:57.418 page.js:12672 calling action nav_item_ready

2015-05-03 22:39:57.422 page.js:12672 calling action nav_item

2015-05-03 22:39:57.427 page.js:12672 calling action nav_item_ready

2015-05-03 22:39:57.432 page.js:12672 calling action nav_item

2015-05-03 22:39:57.437 page.js:12672 calling action nav_item_ready

2015-05-03 22:39:57.441 page.js:12672 calling action nav_group_ready

2015-05-03 22:39:57.444 page.js:12672 calling action nav_group

2015-05-03 22:39:57.451 page.js:12672 calling action nav_item

2015-05-03 22:39:57.453 page.js:12672 calling action nav_item_ready

2015-05-03 22:39:57.457 page.js:12672 calling action nav_item

2015-05-03 22:39:57.460 page.js:12672 calling action nav_item_ready

2015-05-03 22:39:57.465 page.js:12672 calling action nav_item

2015-05-03 22:39:57.469 page.js:12672 calling action nav_item_ready

2015-05-03 22:39:57.479 page.js:12672 calling action nav_group_ready

2015-05-03 22:39:57.485 page.js:12672 calling action nav_group

2015-05-03 22:39:57.498 page.js:12672 calling action nav_item

2015-05-03 22:39:57.503 page.js:12672 calling action nav_item_ready

2015-05-03 22:39:57.509 page.js:12672 calling action nav_item

2015-05-03 22:39:57.514 page.js:12672 calling action nav_item_ready

2015-05-03 22:39:57.521 page.js:12672 calling action nav_item

2015-05-03 22:39:57.527 page.js:12672 calling action nav_item_ready

2015-05-03 22:39:57.531 page.js:12672 calling action nav_group_ready

2015-05-03 22:39:57.533 page.js:12672 calling action nav_ready

2015-05-03 22:39:58.060 page.js:12672 calling action index_ready

2015-05-03 22:39:58.087 page.js:12672 calling action index_ready

Below is the call sequence for profile action, the non working action

2015-05-03 22:37:56.705 page.js:12672 profile_ready is called

2015-05-03 22:37:56.710 page.js:12672 calling action modal

2015-05-03 22:37:56.718 page.js:12672 calling action modal_ready

2015-05-03 22:37:56.732 page.js:12672 calling action profile_ready

2015-05-03 22:37:57.460 page.js:12672 calling action nav

2015-05-03 22:37:57.463 page.js:12672 calling action nav_group

2015-05-03 22:37:57.470 page.js:12672 calling action nav_item

2015-05-03 22:37:57.474 page.js:12672 calling action nav_item_ready

2015-05-03 22:37:57.481 page.js:12672 calling action nav_item

2015-05-03 22:37:57.492 page.js:12672 calling action nav_item_ready

2015-05-03 22:37:57.500 page.js:12672 calling action nav_item

2015-05-03 22:37:57.506 page.js:12672 calling action nav_item_ready

2015-05-03 22:37:57.511 page.js:12672 calling action nav_group_ready

2015-05-03 22:37:57.516 page.js:12672 calling action nav_group

2015-05-03 22:37:57.526 page.js:12672 calling action nav_item

2015-05-03 22:37:57.531 page.js:12672 calling action nav_item_ready

2015-05-03 22:37:57.537 page.js:12672 calling action nav_item

2015-05-03 22:37:57.542 page.js:12672 calling action nav_item_ready

2015-05-03 22:37:57.551 page.js:12672 calling action nav_item

2015-05-03 22:37:57.556 page.js:12672 calling action nav_item_ready

2015-05-03 22:37:57.561 page.js:12672 calling action nav_group_ready

2015-05-03 22:37:57.566 page.js:12672 calling action nav_group

2015-05-03 22:37:57.576 page.js:12672 calling action nav_item

2015-05-03 22:37:57.580 page.js:12672 calling action nav_item_ready

2015-05-03 22:37:57.586 page.js:12672 calling action nav_item

2015-05-03 22:37:57.589 page.js:12672 calling action nav_item_ready

2015-05-03 22:37:57.595 page.js:12672 calling action nav_item

2015-05-03 22:37:57.601 page.js:12672 calling action nav_item_ready

2015-05-03 22:37:57.609 page.js:12672 calling action nav_group_ready

2015-05-03 22:37:57.613 page.js:12672 calling action nav_group

2015-05-03 22:37:57.623 page.js:12672 calling action nav_item

2015-05-03 22:37:57.629 page.js:12672 calling action nav_item_ready

2015-05-03 22:37:57.635 page.js:12672 calling action nav_item

2015-05-03 22:37:57.638 page.js:12672 calling action nav_item_ready

2015-05-03 22:37:57.643 page.js:12672 calling action nav_item

2015-05-03 22:37:57.647 page.js:12672 calling action nav_item_ready

2015-05-03 22:37:57.650 page.js:12672 calling action nav_group_ready

2015-05-03 22:37:57.652 page.js:12672 calling action nav_ready

If I takes out the {{ if Volt.current_user }} in profile action the code in profile_ready will work correctly

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions