Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dart 未登录时如何导航用户登录页面_Dart_Angular Dart - Fatal编程技术网

Dart 未登录时如何导航用户登录页面

Dart 未登录时如何导航用户登录页面,dart,angular-dart,Dart,Angular Dart,我有一个关于angulardart和登录流的结构性问题。我有一个与服务器对话的服务,它有login()、logout()和loggedIn()等方法。在angular中,这一切都非常好,但我正在寻找一种最佳实践方法,将登录流合并到我的应用程序中 该应用程序要求用户登录。那么,当用户未登录时,我会在启动时重新路由到自定义的“登录”视图吗?我是否会在未登录时切换main index.html的部分内容?我会创建一个处理登录的自定义组件吗 这种情况下是否有共同的角度模式?我当前的解决方案是基于路由的。

我有一个关于angulardart和登录流的结构性问题。我有一个与服务器对话的服务,它有login()、logout()和loggedIn()等方法。在angular中,这一切都非常好,但我正在寻找一种最佳实践方法,将登录流合并到我的应用程序中

该应用程序要求用户登录。那么,当用户未登录时,我会在启动时重新路由到自定义的“登录”视图吗?我是否会在未登录时切换main index.html的部分内容?我会创建一个处理登录的自定义组件吗


这种情况下是否有共同的角度模式?

我当前的解决方案是基于路由的。我为登录和登录页创建了视图。当用户在登录页面上并登录时,他将被路由到登录页面。当用户未通过身份验证并在网站上输入任何路径时,他将被重定向到登录页面

以下是RouteInitializer:

.addRoute(
姓名:'签名',
路径:'/sign',
输入:view('view/sign.html'))
…addRoute(
名称:“仪表板”,
路径:'/dashboard',
defaultRoute:对,
前中心:\确保重新验证,
输入:视图('view/dashboard.html'))
\u ensureAuthenticated()
方法必须设置为
preEnter
回调,并评估登录状态:

\u确保重新验证(RoutePreentEvent routeEvent){
if(!\u userService.loggedIn){
routeEvent.allownter(新的Future.value(false));
_router.go('signin',{});
}
}
虽然这很好地工作,但是必须在每个路由中将
\u ensureAuthenticated()
方法设置为
preEnter
回调。是否有一种方法可以更容易地在全球范围内捕获
preEnter
?在
根路径上设置它不起作用