相关疑难解决方法(0)

没有散​​列'#'的AngularJS路由

我正在学习AngularJS,有一件事让我很烦.

我用来$routeProvider为我的应用程序声明路由规则:

$routeProvider.when('/test', {
  controller: TestCtrl,
  templateUrl: 'views/test.html'
})
.otherwise({ redirectTo: '/test' });
Run Code Online (Sandbox Code Playgroud)

但是当我在浏览器中导航到我的应用程序时,我看到了app/#/test而不是app/test.

所以我的问题是为什么AngularJS将此哈希添加#到网址?有没有可能避免它?

javascript angularjs

222
推荐指数
5
解决办法
18万
查看次数

Angular 1.6中的URL hash-bang(#!/)前缀而不是简单哈希(#/)

我上AngularJS项目的网址已经从localhost:3000/admin#/localhost:3000/admin#!/自从上次我在我的项目工作...

没有在网上找到任何东西,有人知道这是什么?

javascript url hashbang angularjs angularjs-1.6

47
推荐指数
3
解决办法
3万
查看次数

在路由中使用.run时从Angularjs中的URL中删除#

这是我app.js 在AngularJS中的路由文件

var app = angular.module('myApp', ['ngRoute', 'ngAnimate', 'toaster']);
app.config(['$routeProvider',
    function ($routeProvider) {
        $routeProvider.
                when('/login', {
                    title: 'Login',
                    templateUrl: 'resources/views/layouts/loginUser.php',
                    controller: 'authCtrl'
                })
                .when('/', {
                    title: 'Login',
                    templateUrl: 'resources/views/layout/login.php',
                    controller: 'logoutCtrl'
                })
                .when('/reset', {
                    title: 'Reset Password',
                    templateUrl: 'resources/views/layouts/forgetPassword.php',
                    controller: 'authCtrl'
                })
                .when('/invalidtoken', {
                    title: 'Login',
                    templateUrl: 'resources/views/layout/invalidtoken.php',
                    controller: 'authCtrl',
                    role: '0'
                })

                //$locationProvider.html5Mode(true);
    }])


        .run(function ($rootScope, $location, Data, $http) {
            $rootScope.$on("$routeChangeStart", function (event, next, current) {
                     var nextUrl = next.$$route.originalPath;

                    if (nextUrl == '/signin' || nextUrl == '/login' …
Run Code Online (Sandbox Code Playgroud)

javascript php laravel angularjs angularjs-directive

19
推荐指数
2
解决办法
3200
查看次数

Zurb Foundation Off Canvas子菜单不适用于Angular

我从基金会复制了以下内容以获得Off Canvas子菜单:

<li class="has-submenu">
   <a href="#">Foo</a>
   <ul class="left-submenu">
      <li class="back"><a href="#">Back</a></li>
      <li><label>Level 1</label></li>
      <li><a href="#">Link 1</a></li>
   </ul>
</li>
Run Code Online (Sandbox Code Playgroud)

当我点击'Foo'时,子菜单没有出现,我转到我的主页.我相信,因为链接是#,这是Angular使用的.有没有办法改变基金会#在这种情况下的使用,以使子菜单工作?

zurb-foundation angularjs

7
推荐指数
1
解决办法
322
查看次数

如何使Laravel 5重定向到不带哈希(#)的Angular路由?

我在Angular中使用Laravel 5。

默认情况下,Angular添加/#/到URL。

我不喜欢它,/#/所以我$locationProvider.html5Mode(true);从Angular中删除了它。

现在,每当我尝试访问Angular URL时,Laravel都会拒绝重定向我,而是导致错误提示NotFoundHttpException

抱歉,找不到您要查找的页面。

RouteCollection.php第161行中的NotFoundHttpException:

这是非常合乎逻辑的,因为未在Laravel的路由文件中定义该路由。

如何解决呢?

更多细节:

  • 当我访问时,http://whatever.app/#/dashboard/home一切工作正常(laravel知道这是Angular路线,然后Angular删除了#,因此URL变得http://whatever.app/dashboard/home没有错误)。
  • 当我访问http://whatever.app/dashboard/homeLaravel时显示错误NotFoundHttpException

laravel angularjs laravel-routing laravel-5 laravel-5.1

0
推荐指数
1
解决办法
3203
查看次数