Javascript 具有多个URL属性的AngularJS路由
在我的应用程序中,我需要使用一些路由,它从URL获取多个属性,这样我就可以在PHP中传递它们 我目前有以下功能:Javascript 具有多个URL属性的AngularJS路由,javascript,angularjs,routing,Javascript,Angularjs,Routing,在我的应用程序中,我需要使用一些路由,它从URL获取多个属性,这样我就可以在PHP中传递它们 我目前有以下功能: .when('/jobs/:type', { templateUrl: function(attrs){ return '/pages/jobs.php?_type=' + attrs.type; }, controller : 'jobsController' }) 它允许我使用jobs.php中的$\u GET访问\u type 我正在
.when('/jobs/:type', {
templateUrl: function(attrs){ return '/pages/jobs.php?_type=' + attrs.type; },
controller : 'jobsController'
})
它允许我使用jobs.php中的$\u GET
访问\u type
我正在努力解决这个问题,以便在我的模板Url中有多个attrs
?下面是一个例子:
.when('/page/:data1/:data2', {
templateUrl: function(attrs){ return '/pages/page.php?data1=' + attrs.data1 + '&data2=' + attrs.data2; },
controller : 'mainController'
})
这正好破坏了我的申请。我确信有一种简单的方法可以做到这一点,但我似乎无法理解,因为我对Javascript和Angular还不熟悉
非常感谢高级版。不确定为什么要将php文件指定为templateUrl。这样,我认为您将无法在php文件上使用angularjs功能。最好通过服务调用php文件,并在前端使用angular操作数据。一种可能的方法是 路由器
.when('/page/:data1/:data2', {
templateUrl: views/page.html,
controller : 'mainController'
})
控制器
app.module('myApp').controller('mainController', function(pageService, $scope){
var init = function(){
var data1 = '1234';
var data2 = '4567';
pageService.getPageData(data1, data2)
.success(function(data){
$scope.data = data;
//
})
}
init();
})
服务
app.module('myApp').controller('pageService', function($http){
var factory = {};
factory.getPageDetails(data1, data2){
return $http({
url: '/pages/page.php?data1=' + data1 + '&data2=' + data2;,
method: 'GET'
});
}
return factory;
});
这仅仅是我的一个错误调用了错误的文件
.when('/page/:data1/:data2', {
templateUrl: function(attrs){ return '/pages/page.php?data1=' + attrs.data1 + '&data2=' + attrs.data2; },
controller : 'mainController'
})
确实有效。我调用的php文件只是一个模板文件,我仍然可以在其中添加角度特征。