JavaScript Upload field update config
If you need to dynamically update the config of the upload field based on some inputs on your page, you can use the JavaScript API of the widget to update the field config.
UpdateConfig API
UploadField.updateConfig(config: {}): void
Config Object:
{
required: true, // upload required,
fileMultiple: true, // allow multiple file uploads
fileCountMin: 0, // in case of multiple uploads min
fileCountMax: 2 // in case of multiple uploads max
}
Example:
If you want to change the minimum upload count based on a variant selection on the product form you can use the following code:
var field;
// listener to get a reference to the upload field
window.addEventListener('upload:ready', function(e) {
// store field reference
field = e.detail;
});
// watch changes to the variant selector
document.querySelector('select').on('change', function () {
if(field){
// check if specific value is selected
var isSelected = this.value.indexOf('YES') !== -1;
// update field config
field.updateConfig({
"fileCountMin": isSelected ? 2 : 1,
"fileCountMax": isSelected ? 2 : 1
});
}
});