每次都停止构建类的Flutter停止底部导航栏

时间:2019-12-19 12:08:57

标签: android ios flutter navigation navigationbar

我有一个底部的导航栏,可以在同一屏幕的各个班级之间进行导航

我的主要构建小部件:

var storage =   multer.diskStorage({

destination: function (req, file, callback) {
      callback(null, './uploads');
    },
    filename: function (req, file, callback) {
      callback(null, file.fieldname + '-' + Date.now());
    }
  });

var upload = multer({ storage : storage}).single('document');

export function store(req, res) {
    upload(req,res,function(err) {
        if(err) {
            return res.status(HttpStatus.INTERNAL_SERVER_ERROR).json({
                error: err
            })
        }

        res.end("File is uploaded");

        const {leave_type, comments, date_from, date_to, blocked_dates} = req.body;

        leaves.forge({
            leave_type, comments, date_from, date_to, blocked_dates
        }).save()
            .then(leaves => res.json({
                    success: true,
                    data: leaves.toJSON()
                })
            )
            .catch(err => res.status(HttpStatus.INTERNAL_SERVER_ERROR).json({
                    error: err
                })
            );
    });

}

我的底部栏

  Widget build(BuildContext context) {
    return SafeArea(
      top: false,
      child: Scaffold(
        body: PageStorage(
          child: Stack(
            children: <Widget>[currentPage, bottomBar()],
          ),
          bucket: bucket,
        ),
      ),
    );
  }

底部栏正常工作,但是每次我按下按钮时,它会一次又一次地重建相同的类 即使我正在使用bucket和PageStoorage 如何停止重建课程?

1 个答案:

答案 0 :(得分:0)

好吧,实际上您无法阻止重建。我将为您指出这个答案,因为这是我认为最好的答案。

How to deal with unwanted widget build?

可以出于任何原因随时重建小部件。如果您不希望对性能造成严重影响,请不要在构建方法中使用逻辑,因为构建方法应仅用于显示UI。 BLoC模式确实擅长将显示和逻辑分离。

因此,基本上,保持您的构建方法整洁。