Tradeshift / tradeshift-ui

The Tradeshift UI Library & Framework
https://ui.tradeshift.com
Other
33 stars 45 forks source link

[Panels] Title of tab don't updated #830

Closed irinaklimova closed 5 years ago

irinaklimova commented 5 years ago

UI version 12.2.8

Describe the bug I use tabs with data-ts=Panels element and when I change attribute data-ts.label= of data-ts=Panel element, it does not affect actual title of tab, created by UI components.

To reproduce Sample: https://jsfiddle.net/0hupndq3/18/

Expected behavior If data-ts.label= attribute changes, it should affect title of tab.

Framework usage AngularJS 1.5.11

Desktop (please complete the following information):

zdlm commented 5 years ago

Yes. It is a bug. @irinaklimova We generate the tabs based on the panels what we have in the board. It lost the connection after we generated everything. It hard for me to watch the change of the panel's label. And it will have a performance issue as well. You can do it on the other way. for example:

ts.ui.get('#tabboard', function(board) {
     var tab = board.tabs().get(0); // by index or id;
         tab.label = 'new tab';
        tab.render();
});

And by the way you can use api to generate the tabs as well, if you want change label or do more actions on it.

ts.ui.get('#tabboard', function(board) {
    board.tabs().push(
        { label: 'Four' },
        { label: 'Five' },
        { label: 'Six', onselect() {
            ts.ui.Notification.success('Selected!');
        }});
});
irinaklimova commented 5 years ago

Thank you for a quick response! I knew that I can manage tabs with api methods, but it not always suitable for me. Sad to hear that it will not be fixed, because with other UI components it works fine and with Panels I expected the same.

zdlm commented 5 years ago

We have a plan to replace all the tradeshift-ui components to tradeshift-element, which is made by webcomponent. If there is a workaround way, we will fix it in the webcomponent version. Sorry for that.