本文闡述一些Fluro使用小細節(jié)
在Fluro中,我們需要對每個頁面分別定義一個handler
var buyPageHandler = Handler(
handlerFunc: (BuildContext context, Map<String, dynamic> params) {
var data = params['id'][0];
return BuyPage(data);
});
那么我們跳轉(zhuǎn)的時候就需要傳一個參數(shù)進來
MyAppRouter.router.navigateTo(context, '/users/1234?id=$a',
transition: TransitionType.fadeIn),
為什么用'id'這個key?
使用id或者任何其他合理的字符串都可以,只要方便書寫和管理。
全部的頁面都可以使用相同的key。
為什么用[0]?
[0]表示數(shù)組的第一個元素。params其實是一個List<String>格式的數(shù)組
,而且長度只有1。
我們可以改造一下handler的定義
var buyPageHandler = Handler(
handlerFunc: (BuildContext context, Map<String, List<String>> params) {
var data = params['id'].first;
return BuyPage(data);
});
為什么是'/users/1234?id=$a'
這是固定格式
'路由name?key=value'