I think I found some thing
image.js line 77 and 78 don’t care what type of return value needed. Those lines always prints image.id
Change line 78 to
div.find(‘.acf-image-value’).val( image.url ).trigger(‘change’);
fixed my problem but it is still buggy.