加载Express-routed Partial后消防AngularJS

时间:2013-12-30 19:47:52

标签: javascript node.js angularjs express

我还是AngularJS的新手,所以我遇到了一个让我睡不着觉的问题;)......

我们已经构建了一个基于node.js和express的应用程序。部分的整个路由是通过Express完成的。

所以现在,看似发生的事情是: 当我加载一个新的部分angularJS已经被触发并且不解析新内容。

有没有办法告诉angular解析新内容?

到目前为止,我没有一个很好的例子,因为对我来说,将结构简化为“最小”的例子会非常困难。

无论如何,我希望有人有一个有用的暗示;)

更新

好吧所以看起来不仅是我的应用程序不会在里面运行 - 部分,但整个angularJS不起作用。这意味着即使我写了像

这样的东西
{{ 1 + 2 }}

它不会呈现为“3”,而是呈现为{{1 + 2}}。所以我所拥有的是一个名为“startup()”的函数,它调用我需要在partials中的每个函数。 我现在重写了我的角度功能,所以它现在是一个应用程序。

我现在所做的就是从我的启动功能中的materik建议的。 不幸的是,这也不起作用(是的,我已经实现了“angular-routes.js”

所以只是为了弄清楚看似发生的事情: 首次加载:

  • 1)Express将所有需要的东西(包括Angular)加载到“主站点”
  • 2)我点击加载新部分的链接
  • 3)通过Express进行部分路由,但由于它是异步的,当角度闪光时,部分不存在
  • 4)表达式不呈现并显示为{{expression}}
  • 5)如果我重新加载整个页面(通过点击F5)没有变化,因为首先路由“外部”页面(所有“在部分之上”,其中角度工作)完成,然后,因为URL类似于为“/ someURL”定义的localhost / someURL express路由,但由于angular已被触发,因此它不解析部分内容

所以我需要告诉角度是这样的:“亲爱的角度,请等到新部分加载,然后开火”

祝你好运

1 个答案:

答案 0 :(得分:0)

很难说没有看到任何代码,但我似乎遇到了类似于我的部分不会更新的angularjs-node.js-express app的问题。我通过将其添加到前端代码来解决它:

myAngularApp.run(function($route) {
    $route.reload()
})

如果有帮助,请告诉我。