【问题标题】:AngularJs Routing | don't change URLAngularJs 路由 |不要更改网址
【发布时间】:2014-10-09 07:02:29
【问题描述】:

我正在开发一个使用 AngularJs 路由器的应用程序。

所以我的网址看起来像这样:

appName/viewOrders

我的问题是,当我用 F5 刷新浏览器时出现 404 错误。 (因为没有名为 viewOrders 的文件夹甚至文件)

我无法通过配置文件重定向它,因为我无法在我正在开发的环境中使用它(An Sharepoint 2013 App)。

于是我想到了这个主意: 当我点击导航时,Url 不会改变并停留在

/appName

但是视图做到了。 我怎样才能实现它?我要使用ui-router吗?

【问题讨论】:

    标签: url redirect refresh router angular-ui-router


    【解决方案1】:

    如果您的访问受限并且无法使用答案@tommyd456(听起来可能是这种情况),另一种选择是使用 stateProvider (ui-router) 完全省略 url。

    Angular ui-router: Can you change state without changing URL?

    【讨论】:

    • 目前我已经找到了一个适合我的解决方案(使用 ng-include 完成)。但是非常感谢链接,这就是我正在搜索的内容:)
    【解决方案2】:

    不确定你是否已经解决了这个问题,但无论如何这里有一个潜在的解决方案......

    您使用的是 HTML5 模式,因此您需要按照此处的说明进行服务器端重写:https://github.com/angular-ui/ui-router/wiki/Frequently-Asked-Questions#how-to-configure-your-server-to-work-with-html5mode

    但是,听起来您对服务器的访问受到限制,所以为什么要停止 HTML5 模式。

    不要像你建议的那样破解它 - 这可能会让人讨厌。

    【讨论】:

    • 感谢您的回复。我已经有一个解决方案(目前用 ng-include 做了)。我正在开发一个 Sharepoint 托管应用程序,并且不允许通过配置文件或其他任何内容进行服务器端重写。这就是问题所在,为什么我要寻找这样一个(讨厌的)解决方案。
    猜你喜欢
    • 2020-05-16
    • 1970-01-01
    • 2013-09-24
    • 2021-10-05
    • 1970-01-01
    • 2020-11-12
    • 2019-11-29
    • 2020-08-03
    • 1970-01-01
    相关资源
    最近更新 更多