Object.assign
копирует значения свойств. Вам нужно «переопределить» свойства, используя Object.defineProperties(obj, Object.getOwnPropertyDescriptors(extend))
.
Вот почему вы получаете ошибку при попытке получить значение csrfOptions
.
const defaultOptions = {};
const extend = {
get csrfOptions() {
return Object.assign({}, defaultOptions, this.securityOptions.csrf); //can't read property csrf of undefined
}
}
const obj = {
securityOptions: {
csrf: {
name: 'laoqiren'
}
}
}
Object.defineProperties(obj, Object.getOwnPropertyDescriptors(extend))
console.log(obj.csrfOptions);
Вы не должны клонировать <tr>
, просто клонировать один из элементов .myFiles
и добавить его в .drop-files
.
var file = $(".myFiles").clone();
file.html(response);
$('.drop-files').append(file);