flutter中的onUnknownRoute是什么

问题描述 投票:-1回答:1

我是扑扑的新手,在MaterailApp窗口小部件中,有一个名为onUnknownRoute的属性。 onUnknownRoute的主要用途是什么?

感谢您的帮助!

flutter flutter-layout flutter-navigation
1个回答
0
投票

您可以在下面复制粘贴运行完整代码在flutter web中,当用户手动键入未定义的路线时,会产生类似于404的效果

enter image description here

完整代码

import 'package:flutter/material.dart';

void main() {
  runApp( MaterialApp(    
    initialRoute: "/screen1",
    routes: <String, WidgetBuilder>{
      '/screen1': (BuildContext context) =>  Screen1(),
      '/screen2': (BuildContext context) =>  Screen2(),
      '/screen3': (BuildContext context) =>  Screen3(),
      '/screen4': (BuildContext context) =>  Screen4()
    },
    onUnknownRoute: (RouteSettings settings) {
      return MaterialPageRoute<void>(
        settings: settings,
        builder: (BuildContext context) =>
            Scaffold(body: Center(child: Text('Not Found'))),
      );
    },
  )
  );
}

class Screen1 extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Container();
  }
}

class Screen2 extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Container();
  }
}

class Screen3 extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Container();
  }
}

class Screen4 extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Container();
  }
}
© www.soinside.com 2019 - 2024. All rights reserved.