【问题标题】:angular ui-router reload with Javascript widgetAngular ui-router 使用 Javascript 小部件重新加载
【发布时间】:2015-10-01 18:44:36
【问题描述】:

使用 Angular ui-router 制作医生网站,通过 ui-sref 切换部分内容。我需要 ui-sref 链接来重新加载带有 javascript 小部件的页面,以便它们上传。 这是视图:

<a ui-sref="home">

以及js文件中的状态路由器:

  .state('home', {
      url: '/home',
      templateUrl: 'Partials/partial-home.html'
     })

我试过了:

ui-sref-opts="{reload: true}"

在我的 ui-sref 中,但它没有重新加载小部件。我尝试了在这里找到的其他代码,但也没有帮助。 以下是任何想看的人的源代码: https://github.com/EBM26

【问题讨论】:

  • 你说“它不起作用”。这意味着什么?你在用什么小部件?它是 Angular 模块还是 jQuery / 其他一些 javascript?
  • 如果我没记错的话,Brian,它正在从 Health Tap 网站调用 API,当我点击返回主页时它不会刷新 ui-sref &lt;script type="text/javascript" src="https://www.healthtap.com/widget/askdoc.js" &gt;&lt;/script&gt; &lt;div id="htapWidgetAskdoc" data-doctor="26158967" data-just_answers="true" data-color="rgb(246, 252, 208)" class="col-xs-4"&gt;&lt;span&gt;Powered by&lt;/span&gt; &lt;a href="https://www.healthtap.com"&gt;HealthTap&lt;/a&gt; &lt;div id="HtInboundLinks"&gt; With content from: &lt;a href="https://www.healthtap.com/experts/26158967"&gt;Dr. Danny Benmoshe's Virtual Practice&lt;/a&gt;&lt;br&gt;&lt;/div&gt; &lt;/div&gt;
  • 在 Chrome 中打开网站,在键盘上执行 (CMD | CTRL) + OPTION + i > 转到调试器面板中的“网络”选项卡 > 查看是否有 http 事务( API 调用或脚本下载)与您想要制作的内容相匹配
  • 我觉得这个问题还不够清楚,为什么要在回去的时候重新加载内容?小部件是 angular 的一部分还是另一个库?

标签: javascript angularjs angular-ui-router


【解决方案1】:

如果您想强制重新加载视图,我会在控制器上执行。这打破了 SPA 的全部意义。

看到这个问题。 "ui-sref" does not refresh the "ui-view"(its controller does not rerun) when a link is clicked twice

【讨论】:

  • 感谢 Rick,看到该帖子并在我的代码上进行了尝试,但它不会重新加载小部件。我将重新加载功能放在我的状态路由器中。也许你的意思是我也应该做一个控制器?
  • 是的,这有点骇人听闻,但我认为这就是您想要做的。你也可以在控制器上使用纯 javascript location.reload();
猜你喜欢
  • 2014-11-18
  • 1970-01-01
  • 2016-02-08
  • 2016-01-08
  • 1970-01-01
  • 2015-12-12
  • 2014-10-10
  • 1970-01-01
  • 2015-03-20
相关资源
最近更新 更多