fix: inputdata2dic use getAll for multi-value fields, UserInputView iterate arrays
This commit is contained in:
parent
f732d631e3
commit
829d099d31
@ -16,23 +16,26 @@ bricks.UserInputView = class extends bricks.VBox {
|
||||
this.v_ws = [];
|
||||
this.a_ws = [];
|
||||
this.input_fields.forEach(f =>{
|
||||
if (data[f.name]){
|
||||
var vals = data[f.name];
|
||||
if (!vals) return;
|
||||
if (!Array.isArray(vals)) vals = [vals];
|
||||
vals.forEach(val => {
|
||||
if (f.name.startsWith('video')){
|
||||
var url = URL.createObjectURL(data[f.name]);
|
||||
var url = URL.createObjectURL(val);
|
||||
this.v_ws.push(new bricks.VideoPlayer({
|
||||
url:url,
|
||||
autoplay:false,
|
||||
width: '100%'
|
||||
}));
|
||||
} else if (f.name.startsWith('audio')){
|
||||
var url = URL.createObjectURL(data[f.name]);
|
||||
var url = URL.createObjectURL(val);
|
||||
this.a_ws.push(new bricks.AudioPlayer({
|
||||
url:url,
|
||||
autoplay:false,
|
||||
width: '100%'
|
||||
}));
|
||||
} else if (f.name.startsWith('image')){
|
||||
var url = URL.createObjectURL(data[f.name]);
|
||||
var url = URL.createObjectURL(val);
|
||||
mdtext += `
|
||||
* ${f.label || f.name}
|
||||

|
||||
@ -41,11 +44,11 @@ bricks.UserInputView = class extends bricks.VBox {
|
||||
mdtext += `
|
||||
* ${f.label || f.name}
|
||||
|
||||
${data[f.name]}
|
||||
${val}
|
||||
|
||||
`;
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
this.clear_widgets();
|
||||
var w = new bricks.MdWidget({
|
||||
|
||||
@ -222,8 +222,9 @@ var inputdata2dic = function(data){
|
||||
try {
|
||||
var d = {}
|
||||
for (let k of data.keys()){
|
||||
var x = data.get(k);
|
||||
if (k == 'prompt'){
|
||||
var vals = data.getAll(k);
|
||||
var x = vals.length > 1 ? vals : vals[0];
|
||||
if (k == 'prompt' && typeof x === 'string'){
|
||||
x = bricks.escapeSpecialChars(x);
|
||||
}
|
||||
d[k] = x;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user