Я хотел бы иметь объект как параметр для моего маршрута, но я начинаю с номера, чтобы проверить маршрут, и он не работает.Угловой маршрут с параметрами не работает
Вот мои маршруты:
// configure our routes
app.config(function($routeProvider, $locationProvider) {
$routeProvider
// route for the home page
.when('/', {
controller : 'ApplicationController',
templateUrl : './includes/home/home.html',
})
.when('/voir_message/:message', {
templateUrl : './includes/messages/voir_message.html',
controller : 'VoirMessagesController',
controllerAs : 'controller'
})
.otherwise({redirectTo : '/'});
// use the HTML5 History API
$locationProvider.html5Mode(true);
});
Мой контроллер:
app.controller('VoirMessagesController', function($scope, $rootScope, $location, userService, dataRefreshServices){
$scope.message = $routeParams.message;
});
Когда мне нужно изменить свой маршрут я использую:
$location.path('voir_message/1');
, которые не работают, когда Я нажимаю на ссылку (которая вызывает функцию javascript и вызывает эту строку) моя страница перенаправляется в файл: ///
1 - Почему? Если я удалю «/ 1» и «: сообщение» в маршрутах (поэтому без прохождения какого-либо параметра), он отлично работает.
2 - После того, как мне нужно поместить свой объект, могу ли я просто поставить «JSON.stringify (myObject)» вместо «1»?
3 - И последний вопрос о моих маршрутах, почему адрес начинается с «file: ///»? Например, страница индекса «файл: ///» (я использую nodewebkit), поэтому, когда я загрузить приложение у меня есть следующее сообщение об ошибке:
Failed to load resource: net::ERR_FILE_NOT_FOUND file:///
Я обнаружил, что проблема с моим основным маршрутом , если я изменю «RedirectTo: '/' URL-адрес лучше, но все еще есть ошибка:
.when('/home', {
controller : 'ApplicationController',
templateUrl : './includes/home/home.html',
})
.otherwise({redirectTo : '/home'});
EDIT мое приложение:
var app = angular.module('client', ['ngRoute', 'pascalprecht.translate']);
используется в моей index.html, как т его:
<html xmlns="http://www.w3.org/1999/xhtml" data-ng-app="client">
нужно всего лишь головы: вы инъекционный $ routeParams дважды в контроллере – topheman
Fixed но ничего не меняет – user2088807
Как получить доступ к вашему приложению через браузер? – Eugene