All the DI documentation in Angular seems to be based on the idea that you want the system implementation of a service when the code is production and when you are running automated tests, you want to select among several mock implementations.
No, I have several working implementations of a dependency and I want to choose one (based typically on the URL). How do I do that?
angular.module('impl1', [])....
angular.module('impl2', [])....
var deps = [];
if (location.match(...) {
deps.push('impl1')
} else {
deps.push('impl2')
}
angular.module('myApp', deps);
then in your index.html do
<html ng-app="myApp">