fix: 搜索结果为null时页面异常
This commit is contained in:
@ -74,36 +74,48 @@ class _SearchPanelState extends State<SearchPanel>
|
|||||||
future: _futureBuilderFuture,
|
future: _futureBuilderFuture,
|
||||||
builder: (context, snapshot) {
|
builder: (context, snapshot) {
|
||||||
if (snapshot.connectionState == ConnectionState.done) {
|
if (snapshot.connectionState == ConnectionState.done) {
|
||||||
Map data = snapshot.data;
|
if (snapshot.data != null) {
|
||||||
var ctr = _searchPanelController;
|
Map data = snapshot.data;
|
||||||
RxList list = ctr.resultList;
|
var ctr = _searchPanelController;
|
||||||
if (data['status']) {
|
RxList list = ctr.resultList;
|
||||||
return Obx(() {
|
if (data['status']) {
|
||||||
switch (widget.searchType) {
|
return Obx(() {
|
||||||
case SearchType.video:
|
switch (widget.searchType) {
|
||||||
return SearchVideoPanel(
|
case SearchType.video:
|
||||||
ctr: _searchPanelController,
|
return SearchVideoPanel(
|
||||||
// ignore: invalid_use_of_protected_member
|
ctr: _searchPanelController,
|
||||||
list: list.value,
|
// ignore: invalid_use_of_protected_member
|
||||||
);
|
list: list.value,
|
||||||
case SearchType.media_bangumi:
|
);
|
||||||
return searchMbangumiPanel(context, ctr, list);
|
case SearchType.media_bangumi:
|
||||||
case SearchType.bili_user:
|
return searchMbangumiPanel(context, ctr, list);
|
||||||
return searchUserPanel(context, ctr, list);
|
case SearchType.bili_user:
|
||||||
case SearchType.live_room:
|
return searchUserPanel(context, ctr, list);
|
||||||
return searchLivePanel(context, ctr, list);
|
case SearchType.live_room:
|
||||||
case SearchType.article:
|
return searchLivePanel(context, ctr, list);
|
||||||
return searchArticlePanel(context, ctr, list);
|
case SearchType.article:
|
||||||
default:
|
return searchArticlePanel(context, ctr, list);
|
||||||
return const SizedBox();
|
default:
|
||||||
}
|
return const SizedBox();
|
||||||
});
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
return CustomScrollView(
|
||||||
|
physics: const NeverScrollableScrollPhysics(),
|
||||||
|
slivers: [
|
||||||
|
HttpError(
|
||||||
|
errMsg: data['msg'],
|
||||||
|
fn: () => setState(() {}),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
return CustomScrollView(
|
return CustomScrollView(
|
||||||
physics: const NeverScrollableScrollPhysics(),
|
physics: const NeverScrollableScrollPhysics(),
|
||||||
slivers: [
|
slivers: [
|
||||||
HttpError(
|
HttpError(
|
||||||
errMsg: data['msg'],
|
errMsg: '没有相关数据',
|
||||||
fn: () => setState(() {}),
|
fn: () => setState(() {}),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
|
|||||||
Reference in New Issue
Block a user