2016-01-21 4 views
0

У меня проблема с $routeProvider, когда я правильно использую html5mode. , когда я получаю доступ к /profile/: child, все будет хорошо, но когда страница обновится, то на странице будут ошибки. там что-то случилось с моим кодом ниже:

app.config(function ($routeProvider, $locationProvider) { 

var pathViews = function (file) { 
    return 'http://localhost/mycompany/app/views/' + file; 
}; 
var pathError = function (file) { 
    return 'app/views/error/' + file; 
}; 
$locationProvider.html5Mode(true); 
$routeProvider 
    .when('/', { 
     templateUrl: pathViews('dashboard.html'), 
     controller :'MainCtrl' 
    }) 
    .when('/home', { 
     templateUrl: pathViews('dashboard.html'), 
     controller :'MainCtrl' 
    }) 
    .when('/profile/:child', { 
     templateUrl: function($routeParams) { 
      return pathViews($routeParams.child+'.html')}, 
       controller:'MainCtrl' 
    }) 
    .when('/404', { 
     templateUrl: pathError('404.html'), 
     controller :'MainCtrl' 
    }) 
    .when('/form-standard', { 
     templateUrl: pathViews('form-standard.html'), 
     controller :'MainCtrl' 
    }) 
    .otherwise({redirectTo: '/404'});}); 

и index.html является: <div ng-view ></div>

+3

Не могли бы вы объяснить, что такое ошибка и отправить ее, если в журнале консоли есть какой-либо вывод? – GillesC

+0

У меня нет журнала в браузере, браузер точно так же, как не отвечает .. –

+0

не отвечает, как в ведет загрузка, или загружает пустую страницу, более подробную информацию? – Yerken

ответ

1

Это нормально, так как при обновлении страницы ваш веб-сервер пытается загрузить требуемый ресурс, который Безразлично» t существует на сервере, но вместо этого обрабатывается на стороне клиента.

Например, если развернуть «routeProvided» angularjs приложение на Apache, вы должны изменить ваш .htaccess (source):

RewriteEngine on 

# Don't rewrite files or directories 
RewriteCond %{REQUEST_FILENAME} -f [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule^- [L] 

# Rewrite everything else to index.html to allow html5 state links 
RewriteRule^index.html [L] 

На простом английском языке, вы должны сообщить ваш веб-сервер для перенаправления каждый запросите основную точку входа в модуль.

+0

Я пытался использовать .htaccess. но не решая –

Смежные вопросы