Reset display setting when display changes to prevent e.g. product ids in the category select

This commit is contained in:
claudiulodro 2018-03-02 09:39:12 -08:00
parent bd48a9e397
commit 866a634e9d
2 changed files with 22 additions and 4 deletions

View File

@ -798,12 +798,20 @@ registerBlockType('woocommerce/products', {
* @return Component
*/
function getSettingsEditor() {
var update_display_callback = function update_display_callback(value) {
if (display !== value) {
setAttributes({
display: value,
display_setting: []
});
}
};
return wp.element.createElement(ProductsBlockSettingsEditor, {
selected_display: display,
selected_display_setting: display_setting,
update_display_callback: function update_display_callback(value) {
return setAttributes({ display: value });
},
update_display_callback: update_display_callback,
update_display_setting_callback: function update_display_setting_callback(value) {
return setAttributes({ display_setting: value });
},

View File

@ -526,11 +526,21 @@ registerBlockType( 'woocommerce/products', {
* @return Component
*/
function getSettingsEditor() {
const update_display_callback = ( value ) => {
if ( display !== value ) {
setAttributes( {
display: value,
display_setting: [],
} );
}
};
return (
<ProductsBlockSettingsEditor
selected_display={ display }
selected_display_setting={ display_setting }
update_display_callback={ ( value ) => setAttributes( { display: value } ) }
update_display_callback={ update_display_callback }
update_display_setting_callback={ ( value ) => setAttributes( { display_setting: value } ) }
done_callback={ () => setAttributes( { edit_mode: false } ) }
/>