如何在不同的 HTML 页面中更改 AngularJS 范围?

How to change the AngularJS scope in a different HTML page?

我希望有人能帮我解决这个问题,这真的让我发疯:P 我创建了一个 Plunker 来说明这个问题。请在此处查看演示 http://plnkr.co/edit/BRlDgKYlE87Bh3t53tpZ?p=preview

 My code is in the plunker.

所以我的问题是我无法在我所在的不同 html 视图中更改范围值。正如 Plunker 显示的那样,我在 index.html 中有两个按钮;按钮 1 和按钮 2。当我点击 button1 时,我希望 scope.test 变为 "button1",而当我点击 button2 时,它应该变为 "button2",这个值存在于 index2.html 中。正如您在 console.log 消息中看到的那样,这从未发生过。我使用 rootscope,但如果作用域存在于同一个 html 页面中而不存在于另一个页面中,我仍然只能更改值。请帮忙!

您编写的不是单页应用程序,html2 不知道您在 app.js 中的 angular 代码。您需要使用路由,并且在 angular 路由

的情况下,您应该使用服务在两个 'pages' 或视图之间共享状态

编辑

看看这个plunkr

在这里您将看到 angular 正在运行的路由以及可以在两个控制器之间共享的服务。在两个页面之间切换时,它们所附加的控制器被销毁,因此从页面 1 到页面 2 意味着 contollerA 不再存在,因此您需要使用该服务来存储从页面 1 单击的内容的状态.

希望这是有道理的!