Bonjour à tous j'ai un problème qui me rendra fou bientôt, je n'arrive pas a faire passer des variables entrées par mon utilisateur d'une page à une autre, j'ai beau regarder des videos sur comment le faire , mais sa fonctionne pas
voici la page ou l'utilisateur doit entrer ses informations pour se loguer a l'application
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:tentative_formulaire_konamicash/pages/gamepagealias.dart';
class LoginPage extends StatefulWidget {
const LoginPage({super.key});
@override
State<LoginPage> createState() => _LoginPageState();
}
class _LoginPageState extends State<LoginPage> {
final _formKey = GlobalKey<FormState>();
final controlleremail = TextEditingController();
final controllerpassword = TextEditingController();
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('namse')),
body: Form(
key: _formKey,
child: Column(
children: [
Container(
child: TextFormField(
controller: controlleremail,
)),
Container(
child: TextFormField(
controller: controllerpassword,
),
),
ElevatedButton(
onPressed: () {
Navigator.push(
context,
PageRouteBuilder(
pageBuilder: (context, animation, secondaryAnimation) =>
PageAlias(
formKey: GlobalKey<FormState>(),
controlleremail: TextEditingController(),
controllerpassword: TextEditingController()),
),
);
},
child: Text('connexion'))
],
)),
);
}
}
voici la page ou je souhaite utiliser les donner,il s'agit de controlleradressemail
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
class PageAlias extends StatefulWidget {
const PageAlias(
{super.key,
required GlobalKey<FormState> formKey,
required this.controlleremail,
required this.controllerpassword});
final TextEditingController controlleremail;
final TextEditingController controllerpassword;
@override
State<PageAlias> createState() => _PageAliasState();
}
class _PageAliasState extends State<PageAlias> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
//juste en dessous je souhaite utiliser controllermail,et flutter me dis que texteditingcontroller peut pas etre assigner au type string
title: Text(widget.controlleremail),
),
);
}
}
Bonjour, il semblerait que tu doives utiliser la propriété .text de ton texteditingcontroller pour obtenir la chaîne de caractères (string) :
appBar: AppBar(
title: Text(widget.controlleremail.text),
justement j'ai essayé sa mais il me sorte un long message :This app is linked to the debug service: ws://127.0.0.1:50661/He7rJJ2KIQE=/ws
Debug service listening on ws://127.0.0.1:50661/He7rJJ2KIQE=/ws
Connecting to VM Service at ws://127.0.0.1:50661/He7rJJ2KIQE=/ws
A message on the flutter/lifecycle channel was discarded before it could be handled.
This happens when a plugin sends messages to the framework side before the framework has had an opportunity to register a listener. See the ChannelBuffers API documentation
A message on the flutter/lifecycle channel was discarded before it could be handled.
j'ai aucune idée de ce qu'il se passe pourtant sur les videos sa marche super bien