前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Flutter中值得收藏的几个包

Flutter中值得收藏的几个包

作者头像
徐建国
发布2022-06-24 14:13:39
1.2K0
发布2022-06-24 14:13:39
举报
文章被收录于专栏:个人路线个人路线个人路线

在一些项目里,你无法避免使用一些好的第三方包,以便您可以专注于应用程序的核心逻辑。

那么我今天就给大家推荐九个。

作者:坚果 华为云享专家,InfoQ签约作者,OpenHarmony布道师,,华为云享专家,阿里云专家博主,51CTO博客首席体验官,开源项目GVA成员之一,专注于大前端技术的分享,包括Flutter,鸿蒙,小程序,安卓,VUE,JavaScript。

intro_views_flutter

这是一个示例 Flutter 插件,用于在用户首次使用您的app时吸引他们,因此得名 onboarding。您可以通过管理其顶级状态以在适当的时间向用户显示该小部件,从而在您的应用程序中以任何您想要的方式实现此小部件。

特征 :

  • 轻松添加页面。
  • 圆形页面显示。
  • 很nice的动画。
  • 动画控制,如果用户在中途停止滑动。
  • 跳过按钮,用于跳过应用程序介绍。
  • 自定义字体选择。

img

2.path_provider:^2.0.10

用于查找文件系统上常用位置的 Flutter 插件。支持安卓、iOS、Linux、macOS 和 Windows。并非所有平台都支持所有方法。

Directory tempDir = await getTemporaryDirectory();
String tempPath = tempDir.path;

Directory appDocDir = await getApplicationDocumentsDirectory();
String appDocPath = appDocDir.path;

3.animations: ^2.0.2

可以轻松集成到任何 Flutter 应用程序中的精美预构建动画。

此软件包包含用于常用效果的预置动画。动画效果可以根据您的内容进行定制,并放入您的应用程序中以取悦您的用户。

4.dio

一个强大的 Dart Http 客户端,支持拦截器、全局配置、FormData、请求取消、文件下载、超时等。

import 'package:dio/dio.dart';
void getHttp() async {
  try {
    var response = await Dio().get('http://www.google.com');
    print(response);
  } catch (e) {
    print(e);
  }
}

5.hive

用纯 Dart 编写的轻量级快速键值数据库。使用 AES-256 进行强加密。

6.google_fonts

Flutter包google_fonts允许您在 Flutter 应用程序中轻松使用?fonts.google.com提供的数千种字体中的任何一种。

7.getx

img

  • GetX 是 Flutter 的一个超轻且强大的解决方案。它结合了高性能状态管理、智能依赖注入和快速实用的路由管理。
  • GetX 有 3 个基本原则。
  • 性能:GetX 专注于性能和最小的资源消耗。GetX 不使用 Streams 或 ChangeNotifier。
  • 生产力:GetX 使用简单而愉快的语法。无论您想做什么,GetX 总有一种更简单的方法。它将节省开发时间,并提供您的应用程序可以提供的最大性能。
  • 通常,开发人员应该关注从内存中删除控制器。对于 GetX,这不是必需的,因为默认情况下不使用资源时会从内存中删除它们。如果你想把它保存在内存中,你必须在你的依赖中明确声明“permanent: true”。这样,除了节省时间之外,您对内存产生不必要的依赖的风险也会降低。默认情况下,依赖加载也是惰性的。

8.购物车小部件

image-20220514111028597

import 'package:cart_counter/Widgets/cart_counter.dart';
import 'package:cart_counter/cart_counter.dart';
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
        debugShowCheckedModeBanner: false,
        title: 'Cart Counter',
        theme: ThemeData(
          primarySwatch: Colors.blue,
        ),
        home: HomePage());
  }
}

class HomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        body: Container(
      height: double.infinity,
      child: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          crossAxisAlignment: CrossAxisAlignment.center,
          children: [
            Container(
              width: 150,
              child: CartCounter(
                maximumValue: 10,
                minimumValue: 3,
                value: 3,
                style: TextStyle(
                    color: Colors.red,
                    fontSize: 30,
                    fontWeight: FontWeight.bold),
                onChanged: (val) {
                  //here in val variable you'll get updated counter value.
                  print(val);
                },
              ),
            ),
          ],
        ),
      ),
    ));
  }
}

9.互联网连接检查器

这个插件允许 Flutter 应用程序发现网络连接并进行相应的配置。它可以区分蜂窝连接和 WiFi 连接。

import 'package:connectivity_plus/connectivity_plus.dart';

var connectivityResult = await (Connectivity().checkConnectivity());
if (connectivityResult == ConnectivityResult.mobile) {
  // I am connected to a mobile network.
} else if (connectivityResult == ConnectivityResult.wifi) {
  // I am connected to a wifi network.
}

以上就是我推荐的九个包,不知道大家喜欢不,喜欢的话,不妨给本文点点赞,支持一下。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-05-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大前端之旅 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • intro_views_flutter
  • 2.path_provider:^2.0.10
  • 3.animations: ^2.0.2
  • 4.dio
  • 5.hive
  • 6.google_fonts
  • 7.getx
  • 8.购物车小部件
  • 9.互联网连接检查器
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档