feat: 搜索专栏

This commit is contained in:
guozhigq
2023-09-19 00:06:00 +08:00
parent 9f4b928257
commit 97fa047c60
5 changed files with 18 additions and 7 deletions

View File

@ -89,9 +89,9 @@ class SearchHttp {
case SearchType.media_bangumi: case SearchType.media_bangumi:
data = SearchMBangumiModel.fromJson(res.data['data']); data = SearchMBangumiModel.fromJson(res.data['data']);
break; break;
// case SearchType.article: case SearchType.article:
// data = SearchArticleModel.fromJson(res.data['data']); data = SearchArticleModel.fromJson(res.data['data']);
// break; break;
} }
return { return {
'status': true, 'status': true,

View File

@ -17,7 +17,7 @@ enum SearchType {
// 用户bili_user // 用户bili_user
bili_user, bili_user,
// 专栏article // 专栏article
// article, article,
// 相簿photo // 相簿photo
// photo // photo
} }

View File

@ -397,6 +397,7 @@ class SearchArticleItemModel {
this.pubTime, this.pubTime,
this.like, this.like,
this.title, this.title,
this.subTitle,
this.rankOffset, this.rankOffset,
this.mid, this.mid,
this.imageUrls, this.imageUrls,
@ -414,6 +415,7 @@ class SearchArticleItemModel {
int? pubTime; int? pubTime;
int? like; int? like;
List? title; List? title;
String? subTitle;
int? rankOffset; int? rankOffset;
int? mid; int? mid;
List? imageUrls; List? imageUrls;
@ -431,6 +433,7 @@ class SearchArticleItemModel {
pubTime = json['pub_time']; pubTime = json['pub_time'];
like = json['like']; like = json['like'];
title = Em.regTitle(json['title']); title = Em.regTitle(json['title']);
subTitle = json['title'].replaceAll(RegExp(r'<[^>]*>'), '');
rankOffset = json['rank_offset']; rankOffset = json['rank_offset'];
mid = json['mid']; mid = json['mid'];
imageUrls = json['image_urls']; imageUrls = json['image_urls'];

View File

@ -91,8 +91,8 @@ class _SearchPanelState extends State<SearchPanel>
return searchUserPanel(context, ctr, list); return searchUserPanel(context, ctr, list);
case SearchType.live_room: case SearchType.live_room:
return searchLivePanel(context, ctr, list); return searchLivePanel(context, ctr, list);
// case SearchType.article: case SearchType.article:
// return searchArticlePanel(context, ctr, list); return searchArticlePanel(context, ctr, list);
default: default:
return const SizedBox(); return const SizedBox();
} }

View File

@ -1,4 +1,5 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:pilipala/common/constants.dart'; import 'package:pilipala/common/constants.dart';
import 'package:pilipala/common/widgets/network_img_layer.dart'; import 'package:pilipala/common/widgets/network_img_layer.dart';
import 'package:pilipala/utils/utils.dart'; import 'package:pilipala/utils/utils.dart';
@ -12,7 +13,14 @@ Widget searchArticlePanel(BuildContext context, ctr, list) {
itemCount: list.length, itemCount: list.length,
itemBuilder: (context, index) { itemBuilder: (context, index) {
return InkWell( return InkWell(
onTap: () {}, onTap: () {
Get.toNamed('/htmlRender', parameters: {
'url': 'www.bilibili.com/read/cv${list[index].id}',
'title': list[index].subTitle,
'id': 'cv${list[index].id}',
'dynamicType': 'read'
});
},
child: Padding( child: Padding(
padding: const EdgeInsets.fromLTRB( padding: const EdgeInsets.fromLTRB(
StyleString.safeSpace, 5, StyleString.safeSpace, 5), StyleString.safeSpace, 5, StyleString.safeSpace, 5),