AngularJS完全是客户端。您可以将PHP放入HTML模板中,但是如果您未将网络服务器配置为将HTML文件解析为PHP,那么您的PHP甚至都不会被解析。
即使这样做,AngularJS也会缓存这些模板,因此它将仅在服务器上“运行”一次。这意味着,如果交换出所涉及的模板,然后在该模板所使用的服务器上更改数据,然后又将其交换回去,则对数据的更新将不会反映在模板中,因为绝对为零这些更新发生在Angular方面。
像@
Jonast92这样的好主意是在他的评论中说,不要将客户端和服务器端的问题混合在一起,并在它们之间进行严格的分隔。在角度应用程序的模板中使用角度模型。而不是这样的:
<p><?php echo $item->description; ?></p>
使用角度模型:
<p>{{ item.description }}</p>
如果您需要来自服务器的数据来执行此 *** 作,请使Angular服务出去并为您获取数据:
angular.module('app').controller('controller', [ '$scope', 'ItemManager', function($scope, ItemManager) { $scope.item = null; ItemManager.getItem('item-id').then( function(item) { $scope.item = item; }, function() { console.log('load item failed'); } ); }]);angular.module('app').service('ItemManager', [ '$http', '$q', function($http, $q) { var svc = { getItem: getItem }; return svc; function getItem(id) { var defer = $q.defer(); $http.get('/items/' + id) .success(function(data) { defer.resolve(data); }) .error(function() { defer.reject(); }) ; return defer.promise; } }]);
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)