猿问

使用拼接从数组中删除元素

假设我有一个回应

我正在循环它并将 pic.id 推送到文件数组上


files = []


response.data[0].pics.forEach(function(pic, i){

      let div = makeButtons(response.data[0].pics, files, imgPrevEdit);

      files.push(pic.id);

});

所以推送文件数组后会变成这样

http://img.mukewang.com/6167f1ab0001834e02130024.jpg

make 按钮函数用于使用 splice 函数删除数组上的某个元素


makeButtons: function(file, store, elem) {

    let button = document.createElement("button");

    button.classList.add('position-absolute','x', 'rounded-circle');

    button.type = "button";

    button.innerHTML= "x";


    button.addEventListener('click', () => {

        elem.removeChild(div);

        store.splice(store.indexOf(file), 1);

    });


    let div = document.createElement("div");

    div.classList.add('col', 'mt-2');

    div.appendChild(button);

    return div;

},

但是,当我单击按钮时,它总是从文件数组的末尾开始,它找不到特定的键并将其删除


知道我该如何解决吗?


梵蒂冈之花
浏览 129回答 1
1回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答