fix and fix dynamics render

This commit is contained in:
guozhigq
2023-09-08 17:21:11 +08:00
parent 81dace96d7
commit 72ff3fdab0
3 changed files with 107 additions and 96 deletions

View File

@ -162,6 +162,9 @@ class DynamicsController extends GetxController {
/// 纯文字动态查看
case 'DYNAMIC_TYPE_WORD':
print('纯文本');
if (item.modules.moduleDynamic.major.draw == null) {
return;
}
Get.toNamed('/dynamicDetail',
arguments: {'item': item, 'floor': floor});
break;

View File

@ -137,7 +137,12 @@ Widget forWard(item, context, ctr, source, {floor = 1}) {
],
),
const SizedBox(height: 8),
Text(item.modules.moduleDynamic.desc.text)
Text.rich(
richNode(item, context),
// 被转发状态(floor=2) 隐藏
maxLines: source == 'detail' && floor != 2 ? 999 : 4,
overflow: TextOverflow.ellipsis,
),
],
)
: item.modules.moduleDynamic.additional != null

View File

@ -26,7 +26,7 @@ InlineSpan richNode(item, context) {
} else {
for (var i in richTextNodes) {
/// fix 渲染专栏时内容会重复
if (item.modules.moduleDynamic.major.opus.title == null &&
if (item.modules.moduleDynamic.major?.opus?.title == null &&
i.type == 'RICH_TEXT_NODE_TYPE_TEXT') {
spanChilds.add(
TextSpan(text: i.origText, style: const TextStyle(height: 1.65)));
@ -192,10 +192,10 @@ InlineSpan richNode(item, context) {
);
}
}
try {
if (contentType == 'major' &&
item.modules.moduleDynamic.major.opus.pics.isNotEmpty) {
// 图片可能跟其他widget重复渲染
print('有图片');
List<OpusPicsModel> pics = item.modules.moduleDynamic.major.opus.pics;
int len = pics.length;
List picList = [];
@ -293,12 +293,15 @@ InlineSpan richNode(item, context) {
// ),
// );
}
} catch (err) {
print('❌rich_node_panel err: $err');
}
return TextSpan(
children: spanChilds,
);
}
} catch (err) {
print('❌rich_node_panel err: $err');
print('rich_node_panel err: $err');
return spacer;
}
}