Angular - при обновлении страницы косая черта добавляется к URL

У меня проблема в том, что всякий раз, когда я обновляю страницу, в URL добавляется косая черта. Я автоматически (с тайм-аутом) направляюсь в состояние 'home' из состояния 'intro'. Когда я иду в дом, вместо / home я вижу / home /, что приводит к: Cannot GET /home/. Я видел предложение где-то на этом форуме добавить $urlMatcherFactoryProvider.strictMode(false); чтобы исправить это, однако это не работает так же хорошо, как и все, что я пытался. Есть идеи? Спасибо!

app.config(function ($stateProvider) {
  $stateProvider.state('intro', {
    url: '/',
    templateUrl: 'intro/intro.html',
    controller: 'introCtrl'
  });
});

app.config(function ($stateProvider) {
  $stateProvider.state('home', {
    url: '/home',
    templateUrl: 'home/home.html',
    controller: 'homeCtrl'
  });
});

мой файл app.js:

var app=angular.module('myApp', ['ui.router', 'ui.materialize']);
    app.config(function ($urlRouterProvider, $locationProvider,$urlMatcherFactoryProvider) {
    $locationProvider.html5Mode(true);
    $urlRouterProvider.otherwise('/');
});

1 ответ

Используйте этот код

var app=angular.module('myApp', ['ui.router', 'ui.materialize']);

app.config(function ($stateProvider, $urlRouterProvider, $locationProvider) {

    $urlRouterProvider.otherwise('/');

    $stateProvider

  .state('app.intro', {
            url: '/',
            templateUrl: '/intro/intro.html',
            controller: "introCtrl"
        })

        .state('app.home', {
            url: '/home',
            templateUrl: '/home/home.html',
            controller: "homeCtrl"
        })

    $locationProvider.html5Mode(true);

});
Другие вопросы по тегам