3 回答

TA貢獻1776條經驗 獲得超12個贊
這是新的Angular應用程序中的常見錯誤。如果可以避免,您不想將值寫入服務器上的HTML。如果確實如此,如果您可以擺脫讓服務器完全呈現HTML的局面,那就更好了。
理想情況下,您要發送Angular HTML模板,然后通過JSON中的$ http下拉值并將其放在您的范圍內。
因此,請盡可能執行以下操作:
app.controller('MyController', function($scope, $http) {
$http.get('/getCardInfo.php', function(data) {
$scope.card = data;
});
});
<input type="text" ng-model="card.description" />
如果絕對必須從服務器將值呈現到HTML中,則可以將它們放在全局變量中,并使用$ window訪問它們:
在頁面標題中,您應該寫出:
<head>
<script>
window.card = { description: 'foo' };
</script>
</head>
然后,在您的控制器中,您將像這樣:
app.controller('MyController', function($scope, $window) {
$scope.card = $window.card;
});
希望對您有所幫助。

TA貢獻1887條經驗 獲得超5個贊
如果您無法重做應用程序以執行@blesh的建議(使用$ http或$ resource下拉JSON數據并填充$ scope),則可以使用ng-init代替:
<input name="card[description]" ng-model="card.description" ng-init="card.description='Visa-4242'">
- 3 回答
- 0 關注
- 953 瀏覽
添加回答
舉報