Ad

Flutter/Dart Scope Problem - Return Info Needed To Prevent Duplicate File Upload?

- 1 answer

I've got a button which uploads a file to a server and returns the oldname of the file. Before uploading, I'd like to check if the file has already been uploaded. But unfortunately, there seems to be a problem with scope and the oldname variable always returns null even if the previous upload was successful. Here's the code;

    FlatButton(
            onPressed: () async {
             String oldname;
              if (oldname == null)  {
                   oldname = await uploadAudio(
                   currentuserid: currentuserid,
                   filepath: _current.path);                 
              } else {alertUpLoaded(context);}
            },        
          )
Ad

Answer

Your issue is that oldname will always be null since its initialization String oldname is within the same build method.

Move String oldname above the widget’s build function

Ad
source: stackoverflow.com
Ad