如何从对象中获取值/数据



我正在尝试从我之前填充的对象中获取值。

代码-这是我的对象类:

class ProductObject extends Object{
String _entries;
ProductObject(
this._entries,
);
}

现在我试图在我的代码中填充对象。代码-这里我填充对象:

return GestureDetector(
onTap: () { 
ProductObject productObject = ProductObject(
'Any Data',
);
print('newProductObejct: ' + productObject._image.toString());
Navigator.push(context, MaterialPageRoute(builder: (context) => ProductDetail(productObject)));
},

代码'productObject._entries.toString()'正常工作。我可以从对象中获取数据。

但是如果我将对象传递给另一个显示我无法获得对象数据。代码-这是我的第二页:


class ProductDetail  extends StatefulWidget {
var _product_data;
ProductDetail(this._product_data,{Key? key}) : super(key: key);
@override
_ProductDetail createState() => _ProductDetail (_product_data);
}

class _ProductDetail extends State<ProductDetail > {
var _product_data;
_ProductDetail(this._product_data);
@override
Widget build(BuildContext context) {
return Scaffold(

body:
GestureDetector(
onTap: (){
print('newProductObejct: ' + _product_data._image.toString());
},child: Text('text'),),                   
);
}
}

在第二页我得到了一个错误。这样的:

  • 在调度指针事件时抛出以下_TypeError:

类型'Null'不是'function result'类型'String'的子类型

如何将对象数据传递到另一个页面并在那里调用它们?

_ProductDetail状态类中不需要构造函数。您可以像这样简单地从状态类访问成员_product_data:

widget._product_data

最新更新