框架懒人命令
main.dart
import 'package:flutter/material.dart';
import 'package:fluwe/fluwe.dart';
import 'routes/routes.dart';
void main() async{
WidgetsFlutterBinding.ensureInitialized();
await Fluwe.init(
routesConfig: Routes.config
);
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
navigatorKey: Router.navigatorKey,
onGenerateRoute: Router.onGenerateRoute,
home: FluweApp(
child: IndexPage(),
)
);
}
}
路由快速配置 /routes/routes.dart
import 'package:fluwe/fluwe.dart';
import '../page/index/test_file_page.dart';
import '../page/index/test_router_page.dart';
class Routes {
static List<RouteOptions> config = [
RouteOptions(
url: '/test_router',
page: (args) {
int id = args['id'];
return TestRouterPage(
pageCount: id
);
}
),
RouteOptions(
url: '/test_file',
page: (args) {
return TestFilePage(
);
}
)
];
}
https://github.com/fluttercommunity/flutter_downloader
源码地址:https://github.com/JeasonLaung/fluwe
一个flutter项目快捷template,包含websocket,dio,bloc,fluro,微信小程序api,推送等方便前端开发者快速上手flutter开发APP的应用
- 特别感谢这个weui框架,学习写ui框架的可以参考一下这个git,一句牛逼送给你
https://github.com/allan-hx/flutter-weui
-
请求模块dio
-
路由,自制,比fluro更好用更方便的,你用过不好用的话我切鸡鸡
Router.navigateBack
Router.navigateBack
/// 返回两页
Router.navigateBack(
/// 返回页数
delta: 2,
/// 发送到该页面的参数
result: '12345689'
);
Router.navigateTo
/// 跳转页面
Router.navigateTo(
page: HomePage(
id: '123456'
),
);
/// 或
Router.navigateTo(
url: '/login',
agruments: {
'uid': '123465'
},
);
Router.redirect
/// 重定向页面`
Router.redirect(
page: HomePage(
id: '123456'
);
Router.reLaunch
/// 重重载页面`
Router.reLaunch(
page: HomePage(
id: '123456'
);
- 原生分享previewImage
previewImage
eg:
previewImage(
current: 'https://i0.hdslb.com/bfs/article/c08ee42f2e8a2c76d9b7e1e18e4d1b7a738f2ced.jpg@1320w_990h.webp',
urls: [
'https://i0.hdslb.com/bfs/article/c08ee42f2e8a2c76d9b7e1e18e4d1b7a738f2ced.jpg@1320w_990h.webp',
'https://i0.hdslb.com/bfs/article/a493bfd308cd50c3e8cc0f7d56334f3b2e3bc3b5.jpg@1320w_882h.webp'
]
);
- 原生分享share
share
eg:
share('桃乃木真好看');
- 原生弹出toast
showToast
eg:
showToast('哈哈哈');
- 加载弹出层
showLoading
eg:
showLoading(title: '哈哈哈');
- modal弹出层
showModal
eg:
showModal(title: '弹出窗');
- 打电话
makePhoneCall
eg:
makePhoneCall(phoneNumber: '18888888888');
- 发短信
sendMessage
eg:
sendMessage(phoneNumber: '18888888888');
- 打开应用
openApp
eg:
openApp(appName: OpenAppType.alipays);
- 打开应用
openBrower
eg:
openBrower(url 'https://www.baidu.com');
- 选择图片
chooseImage
eg:
chooseImage();
- 像素
px
eg:
px(50)
- 仿微信小程序像素
rpx
eg:
rpx(50)
- 宽百分比
vw
eg:
vw(50)
- 高百分比
vh
eg:
vw(50)