当前位置: 首页 > 面试题库 >

AngularJS,路由之间传递范围

拓拔弘化
2023-03-14
问题内容

我遇到的情况是表单跨越了几页(可能并不理想,但这就是事实)。我想为整个表单提供一个范围,以便您随身携带,以便用户在步骤之间来回移动时很容易记住状态。

所以我需要用非常伪的代码来做:

  1. $scope.val = <Some dynamic data>
  2. 单击一个链接,然后将其路由到新模板(可能使用同一控制器)。
  3. $scope.val 仍应与最后一页上的值相同。

是否以某种方式持久保存示波器的数据是解决此问题的正确方法,还是还有其他方法?您是否甚至可以创建一个在路由之间具有持久作用域的控制器,当然除了将其保存在数据库中。


问题答案:

您需要使用服务,因为服务将在您的应用程序的整个生命周期中持续存在。

假设您要保存与用户有关的数据

这是您定义服务的方式:

app.factory("user",function(){
        return {};
});

在第一个控制器中:

app.controller( "RegistrationPage1Controller",function($scope,user){
    $scope.user = user;
    // and then set values on the object
    $scope.user.firstname = "John";
    $scope.user.secondname = "Smith";
});

app.controller( "RegistrationSecondPageController",function($scope,user){
        $scope.user = user;
        // and then set values on the object
        $scope.user.address = "1, Mars";

    });


 类似资料:
  • 问题内容: 我面临着在两个状态之间传递数据而不暴露url中数据的问题,就像用户不能真正直接进入此状态一样。 例如。我有两个状态“ A”和“ B”。我正在状态“ A”进行一些服务器调用,并将调用的响应传递到状态“ B”。服务器调用的响应是一个字符串消息,该消息很长,因此我无法在url中公开它。 那么,有角度的ui路由器中有什么方法可以在不使用url参数的情况下在状态之间传递数据吗? 问题答案: 我们

  • 我试图使用在路由之间传递值,但我没有得到它。 我不知道数据将退出并获得键的正确语法和逻辑是什么。 输入下面的代码以方便理解: 更正后: 尝试使用的目的是删除路由历史记录,因此如果用户按设备的后退按钮返回以前的路由,则该路由将不再存在。参考资料 此实现的原因是在登录页面上使用,如果用户已经通过身份验证,他将被重定向到传递登录参数的下一个页面,并且无法通过设备的后退按钮返回登录页面。

  • 问题内容: 我是AngularJS入门者。我正在尝试从发送数据: A页:范列表页 至 网页B:Van更新页面。 当用户单击货车的更新链接时,我正在调用控制器并在控制器中检索货车详细信息。但是,我无法使用同一控制器将货车详细信息分配给页面B(货车更新页面)…错误 问题答案: 您需要创建一个服务,以便能够在控制器之间共享数据。 在控制器A中: 在控制器B中: 请记住通过将myService作为参数传递

  • 问题内容: 我设置了一个范围滑块,范围为0-2hr,时间以分钟为单位计算,然后像这样转换为hh:mm:10min,20min,1hr 20min,2hr。 但是现在我正在尝试使用范围滑块指定的范围来过滤一堆项目,而我很难做到这一点。 这是我所做的http://cdpn.io/LDusa 我正在使用http://danielcrisp.github.io/angular- rangeslider/d

  • 本文向大家介绍angularjs路由传值$routeParams详解,包括了angularjs路由传值$routeParams详解的使用技巧和注意事项,需要的朋友参考一下 AngularJS利用路由传值,供大家参考,具体内容如下  1.导包 2.依赖注入ngRoute 3.配置路由 4.写cel的控制器 5.通过about页面传值给cel页面 修改cel页面的输入框的值 最后是页面布局 看看效果:

  • 主要内容:AngularJS 实例,路由设置对象,AngularJS 实例本章节我们将为大家介绍 AngularJS 路由。 AngularJS 路由允许我们通过不同的 URL 访问不同的内容。 通过 AngularJS 可以实现多视图的单页 Web 应用(single page web application,SPA)。 通常我们的 URL 形式为 http://xnip.cn/first/page,但在单页 Web 应用中 AngularJS 通过 #! + 标记