In the Entropy Dashboard app's "Results Page" there is a table showing experiment results. The table used to contain a custom filter for the "success" column that was based on a Dash dcc.Checklist component.
Once we've converted the Dashboard app to a Dash Multi-Page App a bug became evident in the implementation of the filter. The implementation embedded the dcc.Checklist component in the DataTable using client-side javascript based on the appendChild() DOM API. When a user switched to a different page React went over the components in the DataTable and tried to dispose of them and when it encountered the dcc.Checklist this failed with a client-side error.that said:
Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of this node.
Due to this error, the success filter has been disabled and removed. It should be re-implemented in a way that does not trigger an error.
To Reproduce
Steps to reproduce the behavior:
Checkout to commit e0b6cbdf1ac56ab63b1350d7d4836b82023044ef.
Run poetry run cli serve . (preferably in anexisting project directory)
Browse to localhost:8050
Browse to localhost:8050/params
Expected behavior
A clear and concise description of what you expected to happen.
Describe the bug
In the Entropy Dashboard app's "Results Page" there is a table showing experiment results. The table used to contain a custom filter for the "success" column that was based on a Dash
dcc.Checklist
component.Once we've converted the Dashboard app to a Dash Multi-Page App a bug became evident in the implementation of the filter. The implementation embedded the
dcc.Checklist
component in theDataTable
using client-side javascript based on theappendChild()
DOM API. When a user switched to a different page React went over the components in theDataTable
and tried to dispose of them and when it encountered thedcc.Checklist
this failed with a client-side error.that said:Due to this error, the success filter has been disabled and removed. It should be re-implemented in a way that does not trigger an error.
To Reproduce Steps to reproduce the behavior:
e0b6cbdf1ac56ab63b1350d7d4836b82023044ef
.poetry run cli serve .
(preferably in anexisting project directory)Expected behavior A clear and concise description of what you expected to happen.
Screenshots