如何在 flutter 应用程序中使用 link 从 streambuilder 导航?

How to use link navigating from streambuilder in flutter app?

我正在尝试在 flutter 应用程序中使用 link link 现在我可以使用 const link 但问题是我想使用 link 来自 streambuilder 那么如何改变我的方法? 我是这样尝试的


 @override
  Widget build(BuildContext context) {
    var size = MediaQuery.of(context).size;
    try {
      return Scaffold(
        body: StreamBuilder(
            stream: mystreamofallvideos,
            builder: (context, snapshot) {
              if (snapshot.hasData &&
                  snapshot.connectionState != ConnectionState.waiting) {
                return PageView.builder(
                    onPageChanged: (page) {
                      if (israting = true) {
                        setState(() {
                          israting = false;
                        });
                      }
                    },
                    itemCount: snapshot.data.docs.length,
                    controller: PageController(
                        initialPage: widget.currentvideoindex,
                        viewportFraction: 1),
                    scrollDirection: Axis.vertical,
                    itemBuilder: (context, index) {
                      DocumentSnapshot videos = snapshot.data.docs[index];

                      idovvideo = videos.data()['id'];
                      return Stack(children: [
- - - - -- - 
  InkWell(
                                          onTap: () async {
                                            const url =
                                               videos.data()['productlink'];
                                            if (await canLaunch(url))
                                              await launch(url);
                                            else
                                              throw "Could not launch $url";
                                          },
   

澄清一下这个问题已经回答了。

问题是:

const url = videos.data....

以及解决方案:

final String url = videos.data....

https://dart.dev/guides/language/language-tour#final-and-const