加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

渲染404,而不是在angularjs中重定向404

发布时间:2020-12-17 07:43:59 所属栏目:安全 来源:网络整理
导读:我正在寻找一个很好的方法来渲染404页面,而不是在 angularjs中重定向404页面.我发现许多解决方案都是重定向到另一个页面.它会创建一个问题,如果用户点击浏览器的返回按钮,我将创建另一个重定向到404页面.所以我正在寻找一个代替404页面的解决方案. 感谢您的
我正在寻找一个很好的方法来渲染404页面,而不是在 angularjs中重定向404页面.我发现许多解决方案都是重定向到另一个页面.它会创建一个问题,如果用户点击浏览器的返回按钮,我将创建另一个重定向到404页面.所以我正在寻找一个代替404页面的解决方案.

感谢您的阅读,我希望你们可以理解.

否则可能是您正在寻找的用途.
angular.module('MyApp',[])
.config(function($routeProvider) {
  $routeProvider.
    when('/',{templateUrl:'/home.html'}).
    // add as many as you want here...
    otherwise({templateUrl:'/404.html'}); // Render 404 view
});

更新:阅读更仔细的OP问题(对不起,很早就在这里),我想我有一个替代解决方案(实际上两个):

1)隐藏内容的ng视图的主UI的$scope变量

这要求您在您的视图中显示并在您的参数中解析,然后对其他控制器执行$emit,以告诉“嘿,这个人打了404,不显示你的观点”

$routeProvider.otherwise({
  controller: 'masterController',resolve: {
    404: function(){
      return true;
    };
  });

angular.module('MyApp',[])
.controller('masterController',function($scope,404) {
  $scope.isOn404 = 404
  ...
})

// In the view

<div ng-controller="masterController">
   <div ng-hide="isOn404">
    <!-- Actual content -->
   </div>
   <div ng-show="isOn404">
    <!-- 404 Page -->
   </div>
</div>

现在,这要求您拥有一个主控制器,可帮助您管理其余的UI.此外,您很可能需要执行一些编码来处理页面的其余部分,而不是仅使用ng-view(例如,显示当前标题,正文等的某些控制器).

2)自定义路由系统

我实际上已经为一个特定的项目做了这个:你有一个服务,设置一个“BackURL”和“FordwardURL”;每个$onRouteChange你存储你去哪里,你从哪里来;如果用户即将播放404,您仍然可以通过我的原始示例来呈现,但是当用户点击后,通过AngularJS捕获并渲染实际的“返回”页面.在这种情况下,我正在使用一个库,帮助我在移动设备上的路由名为Lungo和我公司使用的图书馆,即L.A.B(Lungo Angular Bridge).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读