AngularJS dispone di una direttiva specifica per impedire che gli URL dinamici generino un errore 404.
La direttiva è ng-href
:
<div ng-controller="TestCtrl">
<a ng-href="{{myURL}}">Link</a>
</div>
Il codice JavaScript:
var app = angular.module('MyApp', []);
app.controller('TestCtrl', ['$scope', '$timeout', function($scope, $timeout) {
$timeout(function() {
$scope.myURL = 'http://site.test/';
}, 2000);
}]);