我在AngularJS上构建了一个单页面应用程序,它使用HTML5路由进行配置。 所以我用:
http://www.example.com/products rather than http://www.example.com/#/products
我也有附属公司可以使用的通配符子域名,例如:
http://myaffiliate.example.com
我使用这个控制器从firebase收集关于myaffiliate的数据:
app.controller("ReplicatedController", function($scope, $firebaseObject) {
var parts = location.hostname.split('.');
var refSubdomain = parts.shift();
var ref = new Firebase("https://example-firebase.firebaseio.com/" + refSubdomain);
var syncObject = $firebaseObject(ref);
syncObject.$bindTo($scope, "coach");
});
这一切都很好但除了使用通配符子域我还需要附属机构才能使用网址。例如:
http://example.com/myaffiliate
是否可以这样做,我该怎么做?
答案 0 :(得分:0)
您将需要$ routeProvider服务,以便您可以发送路由参数。然后你就可以做这样的事了。
.config(function($routeProvider){
$routeProvider.when('/:my_affiliate', {
//other route details
});
})
.controller('Ctrl', function($scope, $routeParams) {
console.log($routeParams.my_affiliate); // This will print affiliate
});