所以我的网站后端是 PHP,前端是 AngularJS。奇怪的是我发现我必须在前端使用 PHP 来实现一些事情,比如获取 URL 参数。解释如下;
例如给定以下 URL
http://www.test.co.uk/search-menu/1/cinamon-soho
http://www.test.co.uk/search-restaurant?location=asokoro&day=today&time=1100
我在同一页面中的 Angular 代码需要参数位置、日期等。 现在我不得不使用下面的行将它们传递给 angular
$scope.l = <?php echo json_encode($_GET['location']); ?>;
我的问题是;
- 有没有办法只使用 Angular 访问这些变量,这样我就可以不用 PHP 了?
- 如果问题 1 是可能的,那么如果我决定将我的 Angular 代码从那个页面移到专用的
.js
,我该如何做呢?我使用 引用的页面
<script src="http://www.test.co.uk/js/main.js"></script>
仅供引用
该网站不是使用 AngularJS 从头开始构建的。 Angular 后来被引入到前端繁重的工作中,PHP 正在这样做,因此该网站不是 SPA。没有适当的 Angular 路由。
谢谢。
最佳答案
我得到的代码运行良好:
function $_GET(param) {
var vars = {};
window.location.href.replace(
/[?&]+([^=&]+)=?([^&]*)?/gi, // regexp
function( m, key, value ) { // callback
vars[key] = value !== undefined ? value : '';
}
);
if ( param ) {
return vars[param] ? vars[param] : null;
}
return vars;
}
(来源:http://www.creativejuiz.fr/blog/javascript/recuperer-parametres-get-url-javascript)
然后您可以像 PHP $_GET
一样使用它,但使用圆括号而不是方括号。
关于javascript - 访问 URL 参数 - PHP 和 Angularjs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34459427/