我的網址包含一個查詢字符串,例如「www.website.php?feature1 = true & feature2 = false」。如何將角度變量設置爲查詢字符串的值?
當我的頁面加載,我想角變量設置爲查詢字符串變量這樣的值:
$scope.feature1 = $_POST['feature1'];
$scope.feature2 = $_POST['feature2'];
我怎樣才能做到這一點?謝謝。
我的網址包含一個查詢字符串,例如「www.website.php?feature1 = true & feature2 = false」。如何將角度變量設置爲查詢字符串的值?
當我的頁面加載,我想角變量設置爲查詢字符串變量這樣的值:
$scope.feature1 = $_POST['feature1'];
$scope.feature2 = $_POST['feature2'];
我怎樣才能做到這一點?謝謝。
您可以通過訪問$routeParams
參數GET
(URL參數):
app.controller('CtrlName', ['$scope','$routeParams', function($scope, $routeParams) {
$scope.feature1 = $routeParams.feature1;
$scope.feature2 = $routeParams.feature2;
}]);
假設你的網絡入口點是一個PHP頁面(或任何其他的服務器端渲染HTML頁面,如ASP.NET MVC視圖)我通常從服務器獲取類似這些值的方式是使用constant
函數,並在引用角度應用程序後立即將其放置在.php頁面中。事情是這樣的:由JavaScript app.controller('Controller', ['myConfig', function(myConfig) {..}
雖然有更方便的方法莫過於此,當你通過查詢字符串(即可以訪問:
<script src="app.js" />
<script>
angular
.module('app')
.constant("myConfig", {
"feature1": "<?php echo htmlspecialchars($_POST['feature1']); ?>",
"feature2": "<?php echo htmlspecialchars($_POST['feature2']); ?>"
});
</script>
然後在你的控制器,你只需注入恆),使用這種方法,您幾乎可以從服務器端代碼傳入任何內容。
您傳遞的值是通過查詢字符串,它們不是發佈數據。 – randominstanceOfLivingThing
請將答案標記爲「已接受」,以便解決此問題。 :) – leroydev