Então, quando visitamos nossa área de administração e queremos adicionar um novo produto, obtemos essa área aqui.
Recebemos esse erro que obter param não é uma função.
E, de fato, com a reativação, a função get get days do dia cinco você usaria para obter os parâmetros para que
uma determinada ação de navegação fosse removida.
Então, vamos ver o que mais podemos fazer por isso.
Vamos para a tela de produto adicionado, que é a tela que estamos tentando visitar,
que falha aqui e certamente usamos get param aqui, mas também aqui no componente principal da tela de produto adicionado.
Agora, com a reativação 5, não há mais a função get param.
Em vez disso, agora existe um novo suporte além do suporte de navegação, que você ainda precisa executar determinadas ações, como navegar para
longe, mas agora você tem um novo suporte de baleia Bill, que é o suporte principal que ele não estava
disponível antes.
Agora, existe agora neste objeto raiz que você terá apenas a chave dos pais.
Pais não conseguem pais, não é uma função, é apenas uma chave chamada pais que mantém um objeto com
todos os seus pais que você está recebendo como pares de valores-chave.
Portanto, aqui podemos extrair convenientemente o pai que queremos obter.
Então, antes que eu quisesse adquirir o produto I. D. param.
Então agora acessamos o produto I. de perms da rota adereços D. e isso deve funcionar.
Agora, dependendo do seu aplicativo, talvez você nem sempre esteja obtendo um valor para esse parâmetro.
Portanto, às vezes, pode ser indefinido e, por esse motivo, é possível que todos possam verificar se
isso é nulo ou se é indefinido antes de tentar usá-lo.
Agora, quando se trata de definir os pais que também estavam usando aqui neste componente, isso ainda existe, mas
pelo motivo de usá-lo aqui, não precisamos mais usá-lo.
Aqui estávamos usando-o como uma solução alternativa para Q. Basicamente, obtenha dados de nosso corpo de componente.
Então, de dentro da nossa função componente para as opções de navegação lá em baixo.
Certo.
A função de envio e também aqui o nosso produto I. D. estávamos extraindo esses dados agora
para o produto I. D. tudo bem, porque é uma informação específica da rota geral
em que estamos interessados.
Ainda podemos extrair assim, mas levar a função do nosso componente para as opções de
navegação, como fizemos antes, era realmente um pouco hacky e não exatamente como queremos fazer isso.
Agora, por enquanto, manterei a mesma abordagem de antes, mas uma coisa precisa mudar.
Não temos mais param.
Em vez disso, os dados de navegação são um objeto que também possui esse novo objeto raiz, para que
possamos acessar os dados de navegação ponto raiz ponto perms ponto envio e obter a função de envio como esta e a mesma lá em baixo.
Aqui temos as pirâmides de pontos raiz do ponto. D. assim com isso tudo fora do caminho.
Se agora salvarmos isso, isso será reconstruído aqui e, sendo reconstruído, se for agora para o administrador novamente e clicar neste ícone, recebo
um erro que indefinido não é um objeto ao tentar avaliar o envio de permissões de raiz de
dados de navegação.
Então, o que há de errado aí?
O problema que estamos enfrentando aqui é que os pais nem sempre são definidos se essa tela é carregada sem pais, como é o caso
quando estamos no modo de produto do anúncio, o que estamos se apenas clicamos nesse botão no
canto superior direito canto.
Portanto, se não houver pais transmitidos para a tela, toda essa chave de pais aqui será indefinida como um
valor.
Ele não contém um objeto vazio sem os pais.
Ele próprio é indefinido.
Portanto, é importante ter isso em mente.
Os próprios pais serão indefinidos se não houver pais.
E se estamos abrindo essa tela para adicionar um produto, de fato, não há pais inicialmente, este parâmetro de envio
não é definido inicialmente porque isso é feito apenas de dentro do componente.
Então, após a tela ter sido carregada e o produto I. D. definitivamente não está definido porque não estamos editando,
mas adicionando.
Portanto, não há produto I. D. alimentado nesta tela quando navegamos até ela.
Então, como podemos garantir que não estamos recebendo um erro?
Bem, simplesmente temos que verificar se os próprios pais estão definidos ou não.
E poderíamos fazer isso aqui reescrevendo isso.
Então, primeiro tentamos acessar os pais e depois usamos isso como uma condição em uma expressão ternária e dizemos se
os dados são verdadeiros, e somente se forem definidos.
Portanto, se for realmente, queremos tentar acessar os envios dos pais, porque sabemos que os pais pelo menos não
estão na busca e definirão a função de envio.
Agora, digamos que podemos repetir esse dia ou dois para o título do cabeçalho.
Agora já temos uma expressão ternária aqui.
Podemos aninhar essas expressões, mas para torná-las um pouco mais legíveis, toda a divisão é feita em várias linhas.
E terei meus pais rudes aqui, onde basicamente verifico se algum dado rude da NAF é uma coisa, se for,
então eu vou guardar os pais nesses pais rudes constantemente.
Caso contrário, eu configurarei isso para um objeto vazio.
Digamos que agora, ao fazer isso, possamos usar pais rudes aqui e agora seja como um objeto vazio; nesse caso,
possamos acessar o produto I. D. sem erro, mas ficaremos indefinidos,
portanto, estaremos no modo de produto ou se os pais forem encontrados.
Depois, definirei o objeto dos pais reais como um valor para pais rudes e, em seguida, acessamos os objetos dos pais
reais lá.
Portanto, em todos os casos, isso não deve falhar e podemos fazer algo semelhante no componente, claro, querida,
também tentamos agir como nossos pais.
Portanto, aqui também devemos verificar se isso é realmente verdade.
Se estiver definido e se estiver, então direcionamos os pais e, caso contrário, as idéias de produtos definidas como NULL.
Portanto, esta é uma maneira de como você poderia resolver isso.
E se agora protegermos e recarregarmos esse aplicativo, podemos ir para a tela de administração, clicar neste botão e
carregar esta tela aqui com sucesso para adicionar um produto.
Agora testarei isso rapidamente com um livro, digite a imagem que você está L aqui e um preço aqui e descreva o
livro aqui.
E com isso eu posso enviar isso e isso geralmente funciona aqui é o nosso livro.
Agora clique em editar, carregamos essa tela de edição com os dados do livro para que tudo pareça bom e se
eu excluí Bem, isso não funciona.
Eu recebo um erro aqui.
Teremos que analisar isso, mas pelo menos agora funciona corretamente quando se trata dos pais.
No entanto, mencionei que há uma coisa que podemos melhorar sobre pais rudes, se tivermos um caso como este aqui com a
função de envio em que abusamos dos pais para obter dados do corpo do componente para nossas opções de
navegação, porque com a navegação de reação 5 agora temos uma maneira melhor de conseguir isso.