1 00:00:02,250 --> 00:00:07,800 Portanto, agora para terminar neste módulo, quero garantir que também salvemos pedidos em um servidor 2 00:00:07,800 --> 00:00:10,530 e, é claro, que os buscemos também. 3 00:00:10,540 --> 00:00:16,810 Agora, temos o criador de ação de pedidos aqui e ali, podemos novamente aproveitar o Redux Thunk e retornar 4 00:00:16,810 --> 00:00:22,780 nossa função aqui, que obtém essa função de despacho, que deve ser assíncrona com a palavra-chave async, 5 00:00:22,810 --> 00:00:25,280 para que possamos usar async wait e 6 00:00:25,570 --> 00:00:32,110 nessa função aqui que retornamos, é claro que enviarei meu objeto de ação, mas antes de fazer isso, agora 7 00:00:32,110 --> 00:00:38,320 podemos enviar uma solicitação para armazenar esse pedido em um servidor e podemos emprestar essa solicitação do criador 8 00:00:38,320 --> 00:00:41,650 da ação dos produtos. Não há realmente uma 9 00:00:41,710 --> 00:00:46,930 grande diferença se criamos um produto ou esse pedido, para que possamos copiar todo o código 10 00:00:46,930 --> 00:00:59,170 de criação do produto aqui até aqui e movê-lo para os pedidos. arquivo js. 11 00:00:59,180 --> 00:01:00,450 Agora, é claro, você também 12 00:01:00,470 --> 00:01:05,530 pode adicionar o tratamento de erros aqui, não o estou aqui, pelo menos quero acrescentar que não recebo uma verificação 13 00:01:05,540 --> 00:01:07,880 se a resposta não está correta; nesse caso, quero 14 00:01:07,880 --> 00:01:13,130 para gerar um novo erro, algo deu errado, mas esse não deve ser o foco aqui, porque abordamos o tratamento 15 00:01:13,130 --> 00:01:14,500 de erros e o carregamento 16 00:01:14,510 --> 00:01:16,410 de giradores, não exatamente a parte em 17 00:01:16,440 --> 00:01:20,420 que quero focar aqui. Em vez disso, vamos garantir que estamos enviando essa solicitação para 18 00:01:20,450 --> 00:01:21,080 o 19 00:01:21,110 --> 00:01:25,150 endereço certo e esse não deve ser o nó de produtos, mas digamos que o nó 20 00:01:25,520 --> 00:01:32,260 de pedidos, que meio que faz sentido, acho, porque queremos armazenar nossos pedidos. Talvez também desejemos armazenar nossos pedidos específicos para esse usuário, para que possamos armazenar em 21 00:01:32,260 --> 00:01:38,740 / orders / U1, que é meu ID de usuário fictício que assumo aqui. Mais tarde isso será diferente, mais tarde 22 00:01:38,740 --> 00:01:42,040 teremos um ID real aqui, um ID dinâmico, 23 00:01:42,040 --> 00:01:48,350 por enquanto, vamos codificar isso aqui para que tenhamos uma subpasta, uma subpasta por usuário posteriormente. 24 00:01:48,610 --> 00:01:53,980 Deve ser uma solicitação de postagem porque estamos adicionando, adicionando novos dados, adicionando um novo pedido. 25 00:01:53,980 --> 00:01:55,360 Esse cabeçalho precisa ser definido e, é 26 00:01:55,360 --> 00:01:58,170 claro, os dados que estamos enviando são diferentes. Lá, quero enviar 27 00:01:58,210 --> 00:02:05,020 os itens do meu cartão, o valor total e outra coisa importante, a data do pedido. 28 00:02:05,890 --> 00:02:12,820 Quero enviar minha data aqui convertida em uma sequência de caracteres com toISOString no objeto date para que possamos criá-la 29 00:02:12,820 --> 00:02:17,530 localmente no aplicativo e salve o carimbo de data e hora no servidor. 30 00:02:17,530 --> 00:02:22,180 Agora, no seu aplicativo, você também pode criar essa data no servidor, mas como este curso não deve 31 00:02:22,180 --> 00:02:27,100 se concentrar na programação do servidor, faremos isso aqui e enviaremos para o servidor e não nos preocuparemos muito com 32 00:02:27,100 --> 00:02:29,450 isso. o que mais um servidor poderia fazer por 33 00:02:29,530 --> 00:02:34,500 nós; em vez disso, vamos fazer todas as coisas aqui e enviar o carimbo de data e hora final ao servidor. 34 00:02:34,570 --> 00:02:40,300 Agora, isso adicionará um pedido aqui e, quando terminarmos, retornaremos nossos dados de resposta, 35 00:02:40,330 --> 00:02:46,090 que incluirão o ID gerado automaticamente, se você se lembrar, o fizemos na criação do produto. 36 00:02:46,090 --> 00:02:51,820 Portanto, agora, quando adicionamos um pedido, é claro que encaminhamos nossos itens e a quantia, mas agora também desejo encaminhar 37 00:02:51,820 --> 00:02:55,990 o ID que recebo de resData. nome, essa é a mesma 38 00:02:56,170 --> 00:03:02,710 lógica que usamos quando criamos um produto e há mais uma coisa: meu instantâneo de data deve ser 39 00:03:02,710 --> 00:03:05,040 o mesmo que o criado aqui. 40 00:03:05,050 --> 00:03:14,010 Então, na verdade, o que vou fazer é criar meu instantâneo aqui, data com nova data e, em seguida, usar essa constante aqui para criar 41 00:03:14,010 --> 00:03:20,840 minha versão de string e usar a mesma constante aqui para encaminhá-la com os dados do meu pedido. 42 00:03:20,850 --> 00:03:23,730 Portanto, aqui date refere-se a essa data constante, para 43 00:03:23,730 --> 00:03:29,400 que eu use um e o mesmo timestamp, ambos localmente nos meus dados gerenciados com Redux, que são os 44 00:03:29,400 --> 00:03:35,670 dados com os quais trabalho aqui neste aplicativo em execução e, é claro, também têm o mesmo timestamp no servidor quais 45 00:03:35,670 --> 00:03:41,880 são os dados que carregarei no futuro ou outros dispositivos carregarão. E agora só precisamos trabalhar 46 00:03:41,900 --> 00:03:45,500 no redutor de pedidos para adicionar pedidos. 47 00:03:45,500 --> 00:03:48,450 O ID agora é algo que recebo de 48 00:03:48,470 --> 00:03:52,910 fora, então aqui tenho orderData. Id, porque é isso que 49 00:03:52,940 --> 00:03:58,700 estamos encaminhando aqui, é que o ID Firebase gerado automaticamente nos fornece e a data 50 00:03:58,910 --> 00:04:06,100 também é recebida de fora. Agora, agora podemos usar orderData. datas como esta e com isso, temos toda a lógica para 51 00:04:06,250 --> 00:04:07,600 adicionar um pedido. 52 00:04:07,630 --> 00:04:14,710 Agora, vamos voltar aqui e adicioná-lo ao carrinho e clicar em pedir agora, isso parece funcionar. Se voltarmos, agora veremos um nó 53 00:04:14,740 --> 00:04:20,890 de pedidos aqui no Firebase com uma subpasta U1 para nosso usuário com o ID exclusivo gerado e, os 54 00:04:20,890 --> 00:04:27,400 dados do pedido com o carimbo de data e hora com o preço, com os itens do cartão que eram 55 00:04:27,400 --> 00:04:31,570 essa camisa branca e que nem tudo parece tão ruim, eu diria.