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 关注
- 925 浏览
添加回答
举报