flutter - 向其他类发送数据在颤振飞镖中为空
问题描述
我正在使用模型将数据转换为地图。当我将值从 A 类传递给模型时,它返回一个映射,然后我将返回的值(映射)传递给 B 类。在发送值之前,我在 A 类中打印值(它正在显示数据)但在 B 类中它显示为空。这是A类函数。
///Dummy Data remove later
jobPostModel = JobPostModel(
jobPost: 'Web design',
);
var data = jobPostModel.toJob(jobPostModel);
print('before $data');
JobPostScreen8(data);
这是返回 Map 的模型类函数
class JobPostModel {
String jobPost;
JobPostModel(
{this.jobPost});
Map toJob(JobPostModel info){
var data = Map<String, dynamic>();
data['jobPost'] = info.jobPost;
return data;
}
factory JobPostModel.fromJob(Map<String, dynamic> data){
return JobPostModel(
jobPost: data['jobPost']
);
}
}
这是我必须显示数据但显示为空的其他类
class JobPostScreen8 extends StatefulWidget {
Map jobPostModelMapData;
JobPostScreen8([this.jobPostModelMapData]);
@override
_JobPostScreen8State createState() => _JobPostScreen8State();
}
class _JobPostScreen8State extends State<JobPostScreen8> {
@override
void initState() {
super.initState();
print('after ${widget.jobPostModelMapData}');
}
}
解决方案
解决方案是我直接传递给 B 类。我只需要使用导航。
BlocListener<JobBloc, JobState>(
listener: (context, state) {
if (state is JobSuccessfulState)
Navigator.of(context)
.push(MaterialPageRoute(builder: (_) => JobPostScreen8(state.data)));
})
这是集团
if (event is PreviewPostJob) {
yield JobSuccessfulState(_updateModel());
}
和状态
class JobSuccessfulState extends JobState {
var data;
JobSuccessfulState([this.data]);
}
推荐阅读
- mongodb - 在 Google Colab 上使用 Python 的 MongoDB - $elemMatch 上的语法错误
- css - 是否有用于 CSS 的 Vs 代码扩展来美化逗号分隔值,如图像中的那样?
- php - laravel 中的日期时间选择器不显示日历选择
- python - 在 RVIZ 上使用 octomap 可视化无人机 3D LiDAR 扫描
- reactjs - 嵌套表反应
- postgresql - 如何使用 ASP.NET Core 在 SearchPath 参数中设置多个模式?
- javascript - ngbNav 中的非活动选项卡验证
- typescript - Mapbox/PowerBI/webpack:错误未捕获 ReferenceError:_typeof 未定义
- css - 为什么 sass 样式在 react js 中应用 globalley
- node.js - 节点:符号查找,未定义符号:napi_set_instance_data