How to remove an index from the localStorage

0

I need to manipulate localStorage and I'm not sure how to remove an item from an index. I'm very new to the subject and I'm not sure how to pass this information to the button.

Follow the code:

var base;
//verifica se tem alguma "KEY" no localStorage criada com o nome de 'base'
if (localStorage.getItem("base") != null) { // caso retorne nula
    //a base vai converter a String em parenteses para exibir como KEY mais pra frente
    base = JSON.parse(localStorage.getItem("base"));
} else {

    //caso ja esteja criada, declara a base como um vetor;
    base = {
        dados: []
    };
}



$(document).ready(function () {
    $("#btncadastrar").click(cadastrar);
    $("#btnlistar").click(listar);
    $("#btnlimpar").click(limpar);
    $(".excluir").click(function () {
        excluir();
        alert("test")
    });


});

function cadastrar() {

    if ($("#tarefa").val() != "") {
        //base de dados armazena em um array que é chamado pela base, que contem dados, e informa que o atributo recebido sera uma TAREFA:(variavel)
        base.dados.push({ tarefas: $("#tarefa").val() });
        //converte os valores por uma String JSON
        localStorage.setItem('base', JSON.stringify(base));
        $("#idlistar").val("");
        $("#tarefa").val("");
    } else {
        alert("Insira alguma tarefa")
    }
}


function listar() {
    $("#idlistar").empty();

    if (localStorage.length > 0) {

        base = JSON.parse(localStorage.getItem("base"));
        //inserindo em uma lista que inici no UL
        $("#idlistar").append('<ul class="list-group list-group-flush" id="addlistaitem">');
        for (var i = 0; i < base.dados.length; i++) {
            //dentro, vai inserir as linhas da lista de acordo com os dados puxados do localstorage
            //aqui no append eu também criei um botão, que formatei ele dentro do css pra deixar aquele botãozinho laranja
            //passar função d excluir quando clicar naquele botão tbm
            $("#idlistar").append('<li class="border-1" class="list-group-item mb-2">${base.dados[i].tarefas}<input onClick="excluir()" type="button" class="excluir" value="x"></li>')
        }
        //finaliza a ul(lista)
        $("#idlistar").append('</ul>');
    }
}


function excluir() {
    localStorage.setItem('base', JSON.stringify(base));
 
     for (var i = 0; i < base.dados.length; i++) {
         localStorage.removeItem(base.dados[i].tarefas);
     }
 
}

function limpar() {
    localStorage.clear();
    $("#idlistar").empty();
}

    
asked by anonymous 11.11.2018 / 22:24

0 answers