vejo minha evolução quando consigo resolver um problema sozinho, ainda preciso de "rodinhas" para andar, mas com os videos do professor estou consiguindo aprender muito
@xxMrsViolet8 ай бұрын
Muito legal ver a felicidade do professor em ensinar e trabalhar com programação, muito obrigada por tudo. 😊
@lucasdesouza5600Ай бұрын
Bacana, fiquei longe do canal 6 meses e estou voltando hoje
@miranda4923 Жыл бұрын
Aula top, verdadeiro tesouro, encontrar algo desse nível e grátis na net é raro.
@waldayr1964 Жыл бұрын
Descobri seus cursos essa semana. Gostando muito das aulas e da didática. Parabéns, vou assistir todo conteúdo.
@jotaerrybh5 ай бұрын
Muito top essa aula. Fessor Bruno, sempre arrasando nos ensinamentos. Fiz um pequeno ajuste no código, na variável "indice". Do jeito que ficou, ao inserir vários cursos com os novos botões, o 'id' de todos eles acaba sendo o mesmo. Para resolver, ao invés de colocar 'indice++' no final do 'curso.map', eu coloquei no final da função 'criarNovoCurso'. Dessa forma, fica resolvido o problema.
@batata_com_batata Жыл бұрын
Essa aula foi divertida, sendo sincero. O ID dos cursos ficaram meio bugados, mas eu estou tentando resolver isso, não é de se preocupar
@mynameisnotcarol Жыл бұрын
professor, sensacional tua didática
@alanlima9754 Жыл бұрын
olá mano tudo bem? da para add depois com appendChild também. parabéns pelo curso , eu estou aprendendo muito com suas aulas . muito obrigado👍👍👍🤝
@fabiolacorrea74117 ай бұрын
Que aula TOP!! Muito obrigada 😉
@ricardoerickrebelo3380 Жыл бұрын
Eu tive que fazer, no HTML: Adicionar Antes Adicionar Depois para poder dar o espaçamento correto nos botões.
Amando seus cursos professor! Terminando a maratona de Arduino hehe parabéns e continue assim!!!!! 😁😁😁😁😁 Professor nota 1000
@esdrika360 Жыл бұрын
Show de bola!
@FEID20102 жыл бұрын
Esplendido
@marcoanjos65452 жыл бұрын
Olá Bruno, o index++ tem que passar para dentro da função "criarNovoCurso()", porque se estiver sendo chamado no cursos.map() ele não vai fazer a interação o id quando adicionamos novos cursos. Bruno um enorme obrigado pelo teu curso, está a ser muito útil e proveitoso. As explicações são fantásticas. Obrigado
@uosp3.2 жыл бұрын
Isso mesmo, no meu caso, como eu coloquei um ID no input e um FOR em um label resolve meu problema de clicar no nome do curso para selecionar, sem precisar clicar no radio. O Bruno não colocou o label e não colocou ID no radio, eu coloquei pra fazer essa funcionalidade de clicar no nome(texto) do curso.
@erick.resende Жыл бұрын
Tentei colocar o index++ e não deu certo, então criei uma função para reordenar todos os id's, acredito que não seja usual dessa forma, mas foi o jeito que consegui resolver esse "problema" function reordenarIdC(){ const caixaCursosArray = [...caixaCursos.children] for(let i=0; i < caixaCursosArray.length; i++){ caixaCursosArray[i].removeAttribute("id") caixaCursosArray[i].setAttribute("id", "c" + i.toString()) } }
@brunogerum91922 жыл бұрын
tem como fazer uma configuração no CSS para que quanto mais cursos formos adicionando a caixa de fora acompanhe o tamanho?, pq tem uma hora se adicionar muitos ele passa do limite da borda
@JoabeBrill Жыл бұрын
não sei se você já descobriu como fazer, mas de qualquer maneira, no container da lista, em vez de usar height, use o min-height (altura mínima) - E no caso de você querer manter a altura, você pode aplicar nesse mesmo container um overflow-y: auto, isso vai criar uma rolagem quando atingir o limite de espaço.
@willi_ansilvaoliveira3 ай бұрын
@@JoabeBrill era so colocar div com heigth auto 0_0
@LucasBiunessa2 жыл бұрын
Olaa professor tudo bem, vamos ter continuacao do curso de raspberry ?
@matheustiago-s9e Жыл бұрын
Faltou apenas colocar o indice++ no final dos eventos de adicionar curso antes de adicionar curso depois, se não os novos cursos vão sair com id iguais
@arrobacoca38832 жыл бұрын
Professor, só uma pergunta: no "insertAfter" que na verdade é o insertBefore, como que eu faço para inserir um curso depois do último curso da lista (lastChild do caixa1)?
@claudineyryan42762 жыл бұрын
você pode usar apenas o appendChild, ele por si so sempre vai adicionar na ultima posição do array de cursos
@arrobacoca38832 жыл бұрын
@@claudineyryan4276 Ah é verdade, Obrigado pelo toque!!
@aprendizdefunileiro9281 Жыл бұрын
Fala professor blz ? E se eu quiser colocar uma condição para não haver cursos iguais, como seria ?
@batata_com_batata Жыл бұрын
sobre o indice, eu preferi nao criar uma variavel para definir o indice, parecia meio gambearrento kk, eu criei um mini sistema de armazenar os cursos na array, e o id deles seriam o indice da array
@CalebeLSoares Жыл бұрын
Aprendendo ....digitando tudo! Nada de copiar!
@shadowjpce8 ай бұрын
Não entendi porque colocar os dois outros BUTTONS em DIV's separadas. Coloquei todos eles na mesma DIV e continuam funcionando e o espaçamento ficou ainda melhor.
@Tailan001 Жыл бұрын
fiquei UMA HORA procurando meu erro. era return ele.Checked e o certo é return ele.checked kkjakljka q odio
@vitorac412 Жыл бұрын
Dica 1: overflow auto na div pra não estourar quando adiciona mais Dica 2: nomeCurso.value="" pra limpar o campo após adicionar Dica 3: && rs != null para ele também gerar o alerta quando não seleciona o curso. Tentei fazer a dica 3 com switch case ou um aninhamento de if, para ter uma mensagem para cada, mas não deu, se alguem souber. Tambem não consegui limpar o check mark depois de encerrar o evento do botão. Se alguem souber como faz um dos dois ai, manda ae, não importa o tempo da mensagem kkk
@PehGois Жыл бұрын
Bom, você disse que não importava o tempo, então cá estou um mês depois kkkkkkk. Então, eu mudei um pouco as coisas quando eu fiz, mas ficaram assim, espero que seja útil: const radioSelecionado=()=>{ const todosRadios=[...document.querySelectorAll("input[type=radio]")] const radioSelecionado=todosRadios.filter((ele,ind,arr)=>{ return ele.checked }) try{ if (radioSelecionado.length>=1) { radioSelecionado[0].checked = false return radioSelecionado[0] } } catch{ alert("Selecione um curso") return false } } Nota: Eu optei por colocar apenas try catch na hora de pegar o botão selecionado, ao invés de fazer um em cada função, o que suscedeu na acresceção do teste "if(rs)" que verifica se algo foi selecionado pelo usuário. Ademais, se verificar o uncheck da caixa foi realizado através da linha "radioSelecionado[0].checked = false". PS: Essa pequena troca nos try catchs leveram a pequenas alterações na maioria das funções, mas que podem ser resumidas em: adicionar o "if(rs)" e remover as verificações antigas. Exemplo: btnCursoSelecionado.addEventListener("click",(evt)=>{ const rs=radioSelecionado() if (rs){ const cursoSelecionado=rs.parentNode.previousSibling.textContent alert("Curso selecionado: " + cursoSelecionado) } })
@aprendizdefunileiro9281 Жыл бұрын
O meu ficou assim e funcionou: btnAdicionarNovoCursoDepois.addEventListener('click',(evt)=>{ const rs=radioSelecionado() if(rs == undefined){ alert('Nenhum curso selecionado!') }else{ if(nomeCurso.value ==''){ alert('Digite um texto para adicionar!') }else{ const cursoSelecionado = rs.parentNode.parentNode const novoCuso=criarNovocurso(nomeCurso.value) caixaCursos.insertBefore(novoCuso,cursoSelecionado.nextSibling) } } })
@SLZGAM3R2 жыл бұрын
Só falta a parte de Editar que vira um CRUD
@wandersonbritosantos48902 жыл бұрын
Baxar nada, tem que escrever letra por letra na raça, assim a gente erra um letra e sai atraz do erro, garando que assim aprende muito mais.
@R1QUADRADO3 ай бұрын
refazendo o código, checando erro, reformulando a estrutura.....minutos e mais minutos, mas o erro ainda estava lá. Ao "bater o olho" em uma função, percebi ("cilck") ao invés de ("click") KKKKKKKKKKKKKKKKK
@elielvoley2 жыл бұрын
Curso muito bom, complicado e a digitação a aula de 16 minutos cada linha modificada ou introduzida e erro de digitação ou esquece que não precisa colocar # quanto é getElementById e da erro ou quando e querySelector vc não coloca o # ai da erro e tu fica procurando erro mas a onde ta isso. aula tem 16min que pra mim ta virando umas 2h kkkkkkkk, mas vamos persistir