Angularjs:控制器被多次调用

2023-11-25

由于某种原因,当我在资源 1 和资源 2 之间切换时,我的控制器被双重调用。

这是代码:

索引.html

<!DOCTYPE html>
<html ng-app="multiple_calls">

  <head>
    <meta charset="utf-8" />
    <title>AngularJS Plunker</title>
    <link rel="stylesheet" href="style.css" />
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.min.js"></script>
    <script src="app.js"></script>
  </head>

  <body ng-controller="MainCtrl">
    <a href="#res/1">1</a>
    <a href="#res/2">2</a>

    <div ng-view>
    </div>
  </body>

</html>

app.js

var app = angular.module('multiple_calls', []);

app.
  config(['$routeProvider', function($routeProvider) {
  $routeProvider.
      when('/res/:id', {templateUrl: 'res.html',
                        controller: 'res'
      });
}]);


app.controller('MainCtrl', function($scope) {
});

app.controller('res', function($scope, $routeParams) {
  console.log('resource called')
  $scope.id = $routeParams.id;
});

res.html

{{id}}

http://plnkr.co/edit/HsCJmbllOcnlvlc1oiHa?p=preview

如果单击项目 1,然后单击项目 2,您将看到“资源调用”被打印 3 次:资源之间每次更改都会打印 2 次。

有任何线索为什么会发生这种情况吗?


发现一个完全相同的问题:

AngularJs:使用 $routeProvider 调用控制器两次

解决办法是在router url后面添加“/”:

-      when('/res/:id',
+      when('/res/:id/',
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Angularjs:控制器被多次调用 的相关文章

随机推荐

  • 跟踪 Python 导入

    我的 Python 库刚刚更改了它的主模块名称foo bar to foobar 为了向后兼容 foo bar仍然存在 但导入它会引发一些警告 现在 似乎一些示例程序仍然从旧模块导入 但不是直接导入 我想找出错误的地方import陈述 有没
  • U后缀的含义

    后缀 或后缀 有什么作用U以下值的平均值 0U 100U 它代表unsigned 声明常量时 还可以指定其类型 另一个常见的例子是L 这代表long 并且您必须将其放置两次才能指定 64 位常量 例子 1ULL 它有助于避免显式强制转换
  • 如何打乱 ArrayList [重复]

    这个问题在这里已经有答案了 我需要一些帮助来编写一个对 ArrayList 进行洗牌的方法 我不知道该在我的方法中放置什么 这是我到目前为止所拥有的 我尝试使用随机方法来随机化列表中的整数 但这不起作用 有人可以告诉我该怎么做吗 这是我尝试
  • 随机数生成最安全的种子是什么?

    为随机数生成器提供种子的最安全的熵源是什么 这个问题与语言和平台无关 适用于网络上的任何机器 理想情况下 我正在寻找云环境中的机器或托管公司提供的服务器可用的资源 有两个重要的弱点需要记住 使用时间发送随机数生成器违反了CWE 337 使用
  • 如何使用 JavaScript 将所有计算的 CSS 样式从一个元素移动到另一个元素?

    我有一个外部样式表 它将某些样式应用于给定元素 我希望能够将这些样式 使用 JavaScript 完全移动到不同的元素 而无需事先了解正在应用的样式 The CSS td padding 5px div HTML td div Apply
  • Grails 域类必须与数据库绑定吗?

    对于 grails 来说 我是一个十足的菜鸟 对于 groovy 来说 我还是一个菜鸟 所以如果这是一个愚蠢的问题 我深表歉意 我正在构建一个简单的 Web 应用程序 我想根据文件系统对象 即目录结构和文件类型 而不是数据库数据来控制应用程
  • 大引号导致 Java Scanner hasNextLine() 为 false —— 为什么?

    我在让 java util Scanner 读取我在记事本中保存的文本文件时遇到问题 即使它与其他文件一起工作得很好 基本上 当它尝试读取问题文件时 它完全空手而归 hasNextLine 为假 缓冲区为空等 我将其范围缩小到这样一个事实
  • 无法在 @INC 中的 /usr/share/perl/5.14/CPAN/FirstTime.pm 中找到 local/lib.pm

    我正在尝试使用 Perl第一次我的系统是 Ubuntu 12 04 我安装了 Perl v 5 14 2 我抬头如何安装 Perl 模块 所以我开始如下 perl MCPAN e shell 向导开始配置环境 如下所示 http paste
  • Vulkan 的 VkAllocationCallbacks 使用 malloc/free() 实现

    我正在阅读Vulkan 内存分配 内存主机似乎 VkAllocationCallbacks 可以使用简单的 malloc realloc free 函数来实现 typedef struct VkAllocationCallbacks voi
  • 在 Django 模型中排序多对多关系

    假设 Django 模型中有多对多关系 例如 class GroceryList models Model items models ManyToManyField GroceryItem related name in lists cla
  • Rust 中如何在 future 和 Stream 之间进行选择?

    我刚刚开始在 Rust 中尝试 futures tokio 我可以仅使用 future 或仅使用流来完成非常基本的事情 我想知道你如何在未来和流之间进行选择 如何将 tokio 文档中的玩具问题扩展到使用tokio timer Timer进
  • 在JS内部动态加载JS[重复]

    这个问题在这里已经有答案了 我有一个动态网页 我需要在其中导入外部 JS 文件 在IF条件 在另一个 javascript 文件中 我试图寻找可行的解决方案 但没有成功 我尝试使用以下方法将 JS 文件加载到 DOMdocument cre
  • c# RawPrinterHelper 将数据发送到打印机,打印机假脱机并状态“已打印”但实际上并不打印

    我正在使用 RawPrinterHelper 类 如下所述 https support microsoft com en us help 322091 how to send raw data to a printer by using v
  • Firefox 上 Tumblr 的 Base64 字体编码

    我正在开发一个 Tumblr 主题 并且想要使用我在所有浏览器上都有的字体 由于 Firefox 不允许对其他域的 css 字体进行 http 请求 因此该字体目前无法在 Firefox 中使用 但可以在使用标准 font face 语法的
  • 您放弃 MVVM 而采用基于 UserControl 的 WPF 架构有何体验?

    我们基于以下内容构建了一个大型应用程序复合应用程序库 and MVVM using 基础设施学控制 为了节省时间并使申请更加直接 我们废除了 MVVM 要求 我们现在没有 Presenter 或 ViewModel 我们的 View 已成为
  • 为什么使用 GCC 时库链接器标志有时必须放在最后?

    我正在编写一个使用 librt 的小型 C 程序 让我感到非常惊讶的是 如果我将链接标志放在开头而不是结尾 程序将无法编译 目前 为了编译程序 我这样做 gcc o prog prog c lrt std gnu99 如果我执行以下操作 将
  • 如何获取SDCARD上存储的图片的Uri?

    我需要获取存储在 SDCARD 上的图像的 URI 当我想获取存储在可绘制对象上的图像的 Uri 时 我使用它并且效果完美 i putExtra Intent EXTRA STREAM Uri parse android resource
  • jquery Draggable +sortable 与自定义 html 的放置事件?

    将元素放置在可放置区域时更改 html 像这样的东西 http the stickman com files jquery draggable sortable html 但是当我删除元素时 会更改放置的 html 其他示例 我有 2 个列
  • 查看复杂 OCaml 代码中的推断类型

    我是一名 OCaml 新手 正在使用一些我没有编写的相当复杂 至少对我来说 的 OCaml 代码 如果我可以看到某些值的推断类型 那么对理解它会有很大帮助 就像我可以通过将鼠标悬停在任何值上来使用 F 和 Visual Studio 一样
  • Angularjs:控制器被多次调用

    由于某种原因 当我在资源 1 和资源 2 之间切换时 我的控制器被双重调用 这是代码 索引 html