implementei esse codigo em meu app, mas percebi que ele não da o dispose do modulo quando muda de navegação. Nesse mesmo exemplo do video, se Home, Config e Perfil forem modulos, se passar de Home pra Config ele inicia o modulo mas se voltar ele não da o dispose de Config, sabe como pode ajeitar isso ?
Pra quem não sabe o RouterOutlet foi mudado na nova versão do modular. Eu não sei se essa é uma forma correta, mas eu consegui resolver esse problema mudando o extends do arquivo do modulo, invés de ser Module eu troquei pra WidgetModule assim eu tive que add um get do tipo widget com a tela que eu queria e pronto na listview eu só tive que referenciar o modulo, lembrando que tem que add o Bind do controlador no modulo pai do listview.
Li a documentação la no repositório, muito interessante! Irei usar nos meus futuros projetos! São muitos pontos positivos que ganhamos com pouquinho de boilerplate só.
Agora com a nova forma do slidy e do modular trabalharem devido a sua evoluçào, e também devido a nova versão do Flutter para 2.0, para um leigo como eu, dá uma embananada, mas vamos na luta. Minha sugestão é ou refazer o vídeo com as versões atuais, já que tem uma considerável mudança, ou pensar em uma forma de versionar no gut o projeto deste vídeo e novos commits para a atual situação das versões de todos.
Este tutorial é para uma versão mais antiga do Modular, portanto não funciona mais. Neste aulão o Jacob explica como usar o RouterOutlet na versão 4.0 do Modular (já está na minutagem certa): ruclips.net/video/3EV4ESweZzc/видео.html
Eu quero ir pra uma tela utilizando esse bottonNavigatorbar, mas quando eu tiver nessa tela, o bottonNavigatorbar não apareça mais. Tô batendo cabeça com isso, como faz?
na minha opinião ele sabe mtt sobre flutter e suas tecnologias, mas complica mais do que precisa na hora de passar o conhecimento, há caminhos bem mais simples para iniciantes usando os mesmos métodos que ele usou.
(@JacobMoura7) Hi Jacob, thank you for the tutorial. Would you be able to do the same exercise with the newer version of Flutter_modular. I will really appreciate the help. Quiet stuck with this navigation from bottom bar with ModuleRoute. When I am traversing to a module from the BottomNavigationBar, my previous module is getting disposed which I don't want.
Jacob muito obrigado pela explicação. É um bom exemplo para tirar uma duvida: vamos imaginar que esse cenário corresponderia ao detalhe de um cliente e na rota Home queria mostrar as suas facturas/invoices. Precisava de passar uma variável para que o HomeModule fizesse esse filtro. Qual a melhor forma de fazer isso? Obrigado!
vc pode usar as rotas dinâmicas pra isso. Não precisa passar nada para o Módulo. Passando por parametro vc pode usar a opção initialRoute do RouterOutlet.
Acompanho muito o Flutterando. Estou investindo meus desenvolvimentos em flutter. Mas estou tendo problemas com notificações Push. Quando ativa o modo background o app Não funciona. Têm algum material sobre?
Jacob sabe se tem como alterarmos as cores ou o estilo do InkWell (essa "sombra cinza circular default do material") nos cations tap ou quando pressionamos os botoes do bottom ou qq outro lugar?
@@arthurfleischman Dentro do arquivo Module, exemplo: List get routers => [ ModularRouter(RoutersConst.tipsPage, child: (_, args) => TipsPage(currentUser: Modular.args.data)), ]; Eu estava tendo problema com o WidgetModule e isso resolveu.
Neste caso , navegando como Page, sem ser um SubModule, que no caso seria a Pagina Profile e Config , se algumas dessas paginas precisar de suas respectivas Controllers, não terei como aproveitar o Inject do Modulas ?
salve jacob, tentei com o flutter_modular 5.0.3 mas mudou aparentemente, tem algum exemplo que eu possa fazer no 5 ou algum material pra mim tentar ter o mesmo resultado?
Olá, Jacob, parabéns pelo conteúdo. Me ficou uma dúvida nesse tutorial. Quando eu clico no botão voltar (Android) ele sai do app. Como fazer para que o botão voltar redirecione para a última aba selecionada pelo usuário? Ex: Se eu estava na aba Home, cliquei em Config e depois cliquei em voltar, quero que volte para a aba Home.
Opa Jacob, blz? Vi em alguma live você citando que um colega usava o Flutter Modular em uma rede social que ele criou. Eu tenho uma rede social em React Native e gostaria de mudar de tecnologia porque lidamos com muitas listas e não estamos tendo um desempenho satisfatório. Você recomendaria migrar para o Flutter ou fazer nativo?
geralmente controllers sempre necessitam de dispose, na documentação de cada componente mostra se ele possui um método de dispose também... mas um local que diz tudo o que precisa dar dispose eu desconheço
Jacob, blz? Parabens pelo trabalho. Eu ja estava utilizando o RouterOutlet no meu projeto e eu fiz todas as minhas tabs do bottomNavigation como RouterOutlet, vc ve algum problema nisso? Outra coisa, o hero ainda esta com bug quando usa o RouterOutlet? Abs
Não tem problema nenhum. Infelizmente o Hero depende da navegação para funcionar. Como está em uma segunda navegação ele infelizmente nao conseguirá identificar as posições para fazer a animação :(
Bom dia Jacob, estou com um problema, utilizei esse método, mas dentro da minha HomePage existe um formulário, eu pego os dados e entrego um resultado em outra página ao clicar no button, porém nesse método não está passando o valor do resultado para a outra página, está indo null, se eu utilizar Router('/resultado', child: (_, args) => Resultado(resultado: args.params['resultado'])), ele aponta esse erro NoSuchMethodError: invalid member on null: '_get' no RouterOutlet, saberia como resolver?
Tive esse problema. É pq o RouterOutlet não passa parâmetro já que ele pega o módulo direto e abre, então na hora de chamar a page o parâmetro vai vazio. Coloquei para o StartPage receber o dado via parâmetro: const StartPage({Key key, this.title = "Start", @required this.user}) Coloquei pro Modulo receber o dado via parâmetro também: final UserModel user; HomeModule(this.user); E o RouterOutlet ficou: RouterOutlet(module: HomeModule(widget.user)), Se houver uma solução melhor, me avisa.
Achei uma solução melhor para o meu caso, deixei de passar os dados via parâmetro nas rotas nomeadas. Criei uma pasta shared com UserStore e a informação compartilhada, coloquei como injeção de dependências no app module. Altero a variável User da UserStore onde ela é pega, e onde é usada eu apenas faço injeção de depend~encias no controller
acredito que quem teve dificuldades é pq a didática desta aula é voltada para o nível avançado em Flutter, além de requerer o aprendizado de todas as aulas anteriores de modular
github.com/Flutterando/modular#routeroutlet
Qual o nome da branch que tu subiu o codigo mostrado no video?
implementei esse codigo em meu app, mas percebi que ele não da o dispose do modulo quando muda de navegação. Nesse mesmo exemplo do video, se Home, Config e Perfil forem modulos, se passar de Home pra Config ele inicia o modulo mas se voltar ele não da o dispose de Config, sabe como pode ajeitar isso ?
@@mac_alves também queria saber mas parece que não tem...o que não faz sentido
Quando vai vídeo novo com a nova versão do modular?
Essa "subnavegação" nas telas com com RouterOutlet é uma mão na roda, sem gambiarras 😍❤️! Valeu galera,top top!
Pra quem não sabe o RouterOutlet foi mudado na nova versão do modular. Eu não sei se essa é uma forma correta, mas eu consegui resolver esse problema mudando o extends do arquivo do modulo, invés de ser Module eu troquei pra WidgetModule assim eu tive que add um get do tipo widget com a tela que eu queria e pronto na listview eu só tive que referenciar o modulo, lembrando que tem que add o Bind do controlador no modulo pai do listview.
oi! pode explicar melhor? nao encontrei WidgetModule...
Li a documentação la no repositório, muito interessante! Irei usar nos meus futuros projetos! São muitos pontos positivos que ganhamos com pouquinho de boilerplate só.
Agora com a nova forma do slidy e do modular trabalharem devido a sua evoluçào, e também devido a nova versão do Flutter para 2.0, para um leigo como eu, dá uma embananada, mas vamos na luta. Minha sugestão é ou refazer o vídeo com as versões atuais, já que tem uma considerável mudança, ou pensar em uma forma de versionar no gut o projeto deste vídeo e novos commits para a atual situação das versões de todos.
Este tutorial é para uma versão mais antiga do Modular, portanto não funciona mais.
Neste aulão o Jacob explica como usar o RouterOutlet na versão 4.0 do Modular (já está na minutagem certa): ruclips.net/video/3EV4ESweZzc/видео.html
Heroi
Eu quero ir pra uma tela utilizando esse bottonNavigatorbar, mas quando eu tiver nessa tela, o bottonNavigatorbar não apareça mais. Tô batendo cabeça com isso, como faz?
na minha opinião ele sabe mtt sobre flutter e suas tecnologias, mas complica mais do que precisa na hora de passar o conhecimento, há caminhos bem mais simples para iniciantes usando os mesmos métodos que ele usou.
Muito bom, Jacob! Ótimo ver vídeos específicos de Modular usando slidy.
virão muitos agora
@@FlutterandoTV Moor com Modular ! 😍
(@JacobMoura7) Hi Jacob, thank you for the tutorial. Would you be able to do the same exercise with the newer version of Flutter_modular. I will really appreciate the help. Quiet stuck with this navigation from bottom bar with ModuleRoute. When I am traversing to a module from the BottomNavigationBar, my previous module is getting disposed which I don't want.
Jacob muito obrigado pela explicação. É um bom exemplo para tirar uma duvida: vamos imaginar que esse cenário corresponderia ao detalhe de um cliente e na rota Home queria mostrar as suas facturas/invoices. Precisava de passar uma variável para que o HomeModule fizesse esse filtro. Qual a melhor forma de fazer isso? Obrigado!
vc pode usar as rotas dinâmicas pra isso. Não precisa passar nada para o Módulo. Passando por parametro vc pode usar a opção initialRoute do RouterOutlet.
@@FlutterandoTV show! muito obrigado!
Vi agora que o parâmetro module é obrigatório.
Acompanho muito o Flutterando. Estou investindo meus desenvolvimentos em flutter.
Mas estou tendo problemas com notificações Push.
Quando ativa o modo background o app Não funciona. Têm algum material sobre?
super top...tudo que eu tava precisando! thanks
E como funcionaria o dispose entre a navegação dos bottoms?
Da para usar o floatingActionButton nesse modelo de BottomNavigationBar ?
Jacob sabe se tem como alterarmos as cores ou o estilo do InkWell (essa "sombra cinza circular default do material") nos cations tap ou quando pressionamos os botoes do bottom ou qq outro lugar?
Parabéns Jacob pelo excelente e contínuo trabalho. Uma dúvida de um iniciante: para navegar para o submódulo o Modular.link não resolveria?
Sim
Jacob, como passar argumentos para uma RouterOutlet? Sem usar o nanehum navigator... ja q estamos falando de page view
modular.args.data
@@MrVwilliam1 sim, mas nao tem parametro arguments no RouterOutlet....
@@arthurfleischman Dentro do arquivo Module, exemplo:
List get routers => [
ModularRouter(RoutersConst.tipsPage,
child: (_, args) => TipsPage(currentUser: Modular.args.data)),
];
Eu estava tendo problema com o WidgetModule e isso resolveu.
Como funciona pra chamar a home agr que o ChildModule não existe mais?
Achou a solução? também quero saber..
Neste caso , navegando como Page, sem ser um SubModule, que no caso seria a Pagina Profile e Config , se algumas dessas paginas precisar de suas respectivas Controllers, não terei como aproveitar o Inject do Modulas
?
salve jacob, tentei com o flutter_modular 5.0.3 mas mudou aparentemente, tem algum exemplo que eu possa fazer no 5 ou algum material pra mim tentar ter o mesmo resultado?
também não consigo por nada
Olá, Jacob, parabéns pelo conteúdo.
Me ficou uma dúvida nesse tutorial. Quando eu clico no botão voltar (Android) ele sai do app. Como fazer para que o botão voltar redirecione para a última aba selecionada pelo usuário? Ex: Se eu estava na aba Home, cliquei em Config e depois cliquei em voltar, quero que volte para a aba Home.
Opa Jacob, blz? Vi em alguma live você citando que um colega usava o Flutter Modular em uma rede social que ele criou. Eu tenho uma rede social em React Native e gostaria de mudar de tecnologia porque lidamos com muitas listas e não estamos tendo um desempenho satisfatório. Você recomendaria migrar para o Flutter ou fazer nativo?
Você deu disposer no PageView, tem alguma documentação no flutter que fala o que é preciso dar disposer? Ou alguma lógica pra isso???
geralmente controllers sempre necessitam de dispose, na documentação de cada componente mostra se ele possui um método de dispose também...
mas um local que diz tudo o que precisa dar dispose eu desconheço
o Controller do pageView tem alguns listeners que precisam ser liberados. O dispose é do ChangeNotifier, classe que ele herda
Jacob, blz? Parabens pelo trabalho. Eu ja estava utilizando o RouterOutlet no meu projeto e eu fiz todas as minhas tabs do bottomNavigation como RouterOutlet, vc ve algum problema nisso? Outra coisa, o hero ainda esta com bug quando usa o RouterOutlet? Abs
Não tem problema nenhum. Infelizmente o Hero depende da navegação para funcionar. Como está em uma segunda navegação ele infelizmente nao conseguirá identificar as posições para fazer a animação :(
temos que encher de comentários aqui pra alguem ajudar a fazer na v5 do Modular, pois não funciona. A navegação não move da página atual.
Bom dia Jacob, estou com um problema, utilizei esse método, mas dentro da minha HomePage existe um formulário, eu pego os dados e entrego um resultado em outra página ao clicar no button, porém nesse método não está passando o valor do resultado para a outra página, está indo null, se eu utilizar Router('/resultado',
child: (_, args) => Resultado(resultado: args.params['resultado'])), ele aponta esse erro NoSuchMethodError: invalid member on null: '_get' no RouterOutlet, saberia como resolver?
Tive esse problema. É pq o RouterOutlet não passa parâmetro já que ele pega o módulo direto e abre, então na hora de chamar a page o parâmetro vai vazio.
Coloquei para o StartPage receber o dado via parâmetro:
const StartPage({Key key, this.title = "Start", @required this.user})
Coloquei pro Modulo receber o dado via parâmetro também:
final UserModel user;
HomeModule(this.user);
E o RouterOutlet ficou:
RouterOutlet(module: HomeModule(widget.user)),
Se houver uma solução melhor, me avisa.
Achei uma solução melhor para o meu caso, deixei de passar os dados via parâmetro nas rotas nomeadas. Criei uma pasta shared com UserStore e a informação compartilhada, coloquei como injeção de dependências no app module. Altero a variável User da UserStore onde ela é pega, e onde é usada eu apenas faço injeção de depend~encias no controller
top
Didática zero infelizmente
pq mano :(
acredito que quem teve dificuldades é pq a didática desta aula é voltada para o nível avançado em Flutter, além de requerer o aprendizado de todas as aulas anteriores de modular