[18.0][FIX] web_ir_actions_act_window_message: env.services.rpc is not a function #3264
+55
−52
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
1 - When creating an "ir.actions.act_window.message" and clicking on the buttons, this error appears:
I have refactored the component to use "useService" for ORM, removing the use of env.services.rpc
2 - After, testing with an ir_actions_act_window_message in sale.order, which contains a button that triggers the action_confirm action, I encountered this error.
This happens because if the page is refreshed within the form view of the sale.order, the context of the list view is lost, so when the switchView function is called, it executes this code:
In this case, the
controllerStack
array contains a list view, but it doesn't contain theview
field.If we access the sale.order form view directly from the list view without refreshing the page, the
controllerStack
array correctly contains the list view information.The _refreshWidget function has been modified to prevent this error when the user refreshes the page in the form view, and it now triggers a
window.location.reload()
to maintain functionality.