12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- import 'package:cpt_services/modules/services/service_clean_detail/service_clean_detail_vm.dart';
- import 'package:cs_resources/theme/app_colors_theme.dart';
- import 'package:flutter/material.dart';
- import 'package:auto_route/auto_route.dart';
- import 'package:flutter_hooks/flutter_hooks.dart';
- import 'package:hooks_riverpod/hooks_riverpod.dart';
- import 'package:shared/utils/log_utils.dart';
- import 'package:widgets/my_text_view.dart';
- import 'package:widgets/widget_export.dart';
- import 'chooseAirConditionContent_vm.dart';
- // import 'chooseAirConditionTitle_vm.dart';
- class ChooseAirConditionTitle extends HookConsumerWidget {
- final int id;
- final String cleanServiceType;
- const ChooseAirConditionTitle(
- {Key? key,required this.id, required this.cleanServiceType,}) : super(key: key);
- @override
- Widget build(BuildContext context, WidgetRef ref) {
- final totalPrice = useState<double>(0.0);
- ref.listen(
- chooseAirConditionContentVmProvider.select((state) => state.totalPrice ?? 0.0),
- (previous, next) {
- // 处理 totalPrice 变化
- // print('Total Price: $next');
- totalPrice.value = next.toDouble();
- },
- );
- useEffect((){
- // 组件挂载时执行 - 执行接口请求
- // Future.microtask(() => vm.initPageData());
- return () {
- // 组件卸载时执行
- };
- },[]);
- return Container(
- child: Column(
- mainAxisAlignment: MainAxisAlignment.start,
- children: [
- Padding(
- padding: const EdgeInsets.only(left: 20, right: 20, top: 10, bottom: 10),
- child: Column(
- children: [
- MyTextView(
- "Select Air Conditioner",
- textColor: context.appColors.textBlack,
- textAlign: TextAlign.left,
- isFontBold: true,
- fontSize: 17,
- boxWidth: double.infinity,
- // maxLines: 5,
- ),
- MyTextView(
- "\$${totalPrice.value}",
- textColor: context.appColors.textPrimary,
- textAlign: TextAlign.left,
- isFontMedium: true,
- fontSize: 17,
- // maxLines: 5,
- boxWidth: double.infinity,
- ),
- ],
- ),
- ),
- // 分割线
- Divider(
- color: context.appColors.grayBgE9,
- height: 1,
- ),
- ],
- ),
- );
- }
- }
|