The Table will render ALL of the data supplied in
props.data with the styling provided to the table by theming. The only time you need to supply
columns entries of your own are when you want to change the default presentation. This is most commonly done when the columns are not displaying in an order you would like, the headers are not desirable, there are columns included which you do NOT want displayed, or you need to format cell values in a certain way.
Once you begin supplying
columns entries, you must supply an entry for every column you want rendered because the table now registers that there is a departure from the “default” presentation and so it will strictly adhere to only displaying what has been configured to be displayed.
The documentation clarifies it this way:
The Columns property allows for granular column-by-column configurations, indicating how each column should be displayed in the table. When a Column Config option is present, the table reflects that custom configuration. When empty, the table component displays all available columns.