当前位置: 首页 > news >正文

做商城型网站军人运动会官方网站建设目标

做商城型网站,军人运动会官方网站建设目标,母婴用品网站建设,wordpress 登陆 443要在Flutter框架中实现登录和注册功能#xff0c;而不连接数据库#xff0c;可以使用本地存储来存储用户信息。以下是一个简单的示例#xff0c;演示如何使用本地存储来实现登录和注册功能。 首先#xff0c;我们需要添加 shared_preferences 插件到 pubspec.yaml 文件中而不连接数据库可以使用本地存储来存储用户信息。以下是一个简单的示例演示如何使用本地存储来实现登录和注册功能。 首先我们需要添加 shared_preferences 插件到 pubspec.yaml 文件中 dependencies:flutter:sdk: fluttershared_preferences: ^0.5.134然后在 lib 文件夹中创建一个新的文件夹 models并在其中创建一个名为 user.dart 的文件。在 user.dart 文件中定义一个简单的 User 类用于表示用户信息 class User {final String username;final String password;User({required this.username, required this.password}); }接下来我们将在 lib 文件夹中创建一个名为 utils.dart 的文件在其中定义一些工具函数。首先我们将创建一个函数来保存用户信息到本地存储 import package:shared_preferences/shared_preferences.dart; import package:your_app_name/models/user.dart;class Utils {static Futurevoid saveUser(User user) async {final prefs await SharedPreferences.getInstance();await prefs.setString(username, user.username);await prefs.setString(password, user.password);} }然后我们将创建一个函数来从本地存储中获取保存的用户信息 class Utils {// ...static FutureUser? getUser() async {final prefs await SharedPreferences.getInstance();final username prefs.getString(username);final password prefs.getString(password);if (username ! null password ! null) {return User(username: username, password: password);}return null;} }现在我们将在 lib 文件夹中创建一个名为 login.dart 的文件在其中实现登录功能。首先我们将创建一个简单的登录表单 import package:flutter/material.dart; import package:your_app_name/models/user.dart; import package:your_app_name/utils.dart;class LoginScreen extends StatefulWidget {override_LoginScreenState createState() _LoginScreenState(); }class _LoginScreenState extends StateLoginScreen {final _formKey GlobalKeyFormState();String _username ;String _password ;overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text(Login),),body: Padding(padding: EdgeInsets.all(16.0),child: Form(key: _formKey,child: Column(children: [TextFormField(decoration: InputDecoration(labelText: Username),validator: (value) {if (value null || value.isEmpty) {return Please enter your username;}return null;},onSaved: (value) _username value!,),TextFormField(decoration: InputDecoration(labelText: Password),obscureText: true,validator: (value) {if (value null || value.isEmpty) {return Please enter your password;}return null;},onSaved: (value) _password value!,),SizedBox(height: 16.0),ElevatedButton(onPressed: () {if (_formKey.currentState!.validate()) {_formKey.currentState!.save();_login();}},child: Text(Login),),],),),),);}void _login() async {final user await Utils.getUser();if (user ! null user.username _username user.password _password) {// 登录成功showDialog(context: context,builder: (BuildContext context) {return AlertDialog(title: Text(Success),content: Text(Logged in successfully),actions: [TextButton(child: Text(OK),onPressed: () {Navigator.of(context).pop();},),],);},);} else {// 登录失败showDialog(context: context,builder: (BuildContext context) {return AlertDialog(title: Text(Error),content: Text(Invalid credentials),actions: [TextButton(child: Text(OK),onPressed: () {Navigator.of(context).pop();},),],);},);}} }然后我们将在 lib 文件夹中创建一个名为 register.dart 的文件在其中实现注册功能。类似地我们将创建一个简单的注册表单 import package:flutter/material.dart; import package:your_app_name/models/user.dart; import package:your_app_name/utils.dart;class RegisterScreen extends StatefulWidget {override_RegisterScreenState createState() _RegisterScreenState(); }class _RegisterScreenState extends StateRegisterScreen {final _formKey GlobalKeyFormState();String _username ;String _password ;overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text(Register),),body: Padding(padding: EdgeInsets.all(16.0),child: Form(key: _formKey,child: Column(children: [TextFormField(decoration: InputDecoration(labelText: Username),validator: (value) {if (value null || value.isEmpty) {return Please enter your username;}return null;},onSaved: (value) _username value!,),TextFormField(decoration: InputDecoration(labelText: Password),obscureText: true,validator: (value) {if (value null || value.isEmpty) {return Please enter your password;}return null;},onSaved: (value) _password value!,),SizedBox(height: 16.0),ElevatedButton(onPressed: () {if (_formKey.currentState!.validate()) {_formKey.currentState!.save();_register();}},child: Text(Register),),],),),),);}void _register() async {final newUser User(username: _username, password: _password);await Utils.saveUser(newUser);showDialog(context: context,builder: (BuildContext context) {return AlertDialog(title: Text(Success),content: Text(Registered successfully),actions: [TextButton(child: Text(OK),onPressed: () {Navigator.of(context).pop();Navigator.of(context).pop(); // 返回登录页面},),],);},);} }最后在 lib 文件夹中的 main.dart 文件中我们将创建一个简单的登陆注册示例应用包含一个首页和两个路由/login 和 /register。用户可以从首页导航到登录和注册页面 import package:flutter/material.dart; import package:your_app_name/login.dart; import package:your_app_name/register.dart;void main() {runApp(MyApp()); }class MyApp extends StatelessWidget {overrideWidget build(BuildContext context) {return MaterialApp(title: Login Register Demo,theme: ThemeData(primarySwatch: Colors.blue,),initialRoute: /,routes: {/: (context) HomeScreen(),/login: (context) LoginScreen(),/register: (context) RegisterScreen(),},);} }class HomeScreen extends StatelessWidget {overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text(Home),),body: Center(child: Column(mainAxisAlignment: MainAxisAlignment.center,children: [ElevatedButton(onPressed: () {Navigator.pushNamed(context, /login);},child: Text(Login),),ElevatedButton(onPressed: () {Navigator.pushNamed(context, /register);},child: Text(Register),),],),),);} }通过在 main.dart 中定义的初始路由和 routes我们可以在各个页面之间进行导航。用户可以从首页进入登录页面完成登录或者从首页进入注册页面完成注册。 这只是一个简单的示例演示如何在Flutter框架中实现登录和注册功能而不连接数据库。实际应用中您可能需要更完整和复杂的解决方案来处理更多的用户信息和功能。
http://www.yutouwan.com/news/122190/

相关文章:

  • 湘潭网站建设优化建站专业建设网站制作
  • 汉服销售网站建设经销商自己做网站合适吗
  • 现在网站建设的技术展示型网站和官网
  • 为什么我的网站在百度搜不到建设局网站作用
  • 建设网站书籍pdfwordpress插件安装目录
  • 假网站怎么制作成都网络营销精英
  • 邳州网站制作软件下载网站排行榜前十名
  • 牛商网做网站多少钱WordPress程序漏洞
  • 烟台做网站价格政务服务和数字化建设局网站
  • 关于网站平台建设调研的函不利于网站收录
  • 辽宁省建设工程招标协会网站做国际网站怎么能快速打开
  • 网站建设找盖亚科技新手建站详细步骤
  • 东莞网站制作企业网站做网站视频下载
  • 自己做网站怎么发布济南网站备案程序
  • 推广计划展示型网站一样做seo优化吗
  • 那个网站做logo兼职公司网站开发与维护
  • 验证码网站搭建北京到安阳多少公里路
  • 建站之星服务器做外国网站百度搜到
  • 网站建设栏目分级外贸wordpress收款插件
  • 南浔区建设局 网站做电影资讯网站算侵权吗
  • 基于ASP与Access数据库的网站开发ai可以用来做网站吗
  • unix做网站常用的数据库百度帐号登录
  • 手机网站公司wordpress后台重定向
  • 舟山建设信息港网站wordpress_zh
  • 杭州企业网站设计好公司wordpress 乱码
  • 手机网站推广方案大连工程信息网
  • 襄阳网站建设找下拉哥科技大宗商品最新交易平台
  • 网站建设硬件条件国内做网站
  • 网站地址栏图标文字上海网站建设电影联
  • 海南省住房和城乡建设厅官方网站深圳做网站的地方