我想顯示一個數組並且能夠重新載入它。一些項目已經從後端提供給html(作爲SEO的一部分)。其餘的來自前端陣列。ng-repeat當某些項目從後端解析爲html時
HTML
<div ng-controller="MainCtrl">
<p>Hello Mary!</p>
<p ng-repeat="name in names">Hello {{ name }}!</p>
<button ng-click="loadNew()">Load New</button>
</div>
的Javascript
var app = angular.module('plunker', []);
app.controller('MainCtrl', function($scope) {
$scope.names = ['Peter', 'Jack'];
$scope.loadNew = function() {
$scope.names = ['Joe', 'Jennifer'];
}
});
http://plnkr.co/edit/ANdV8G9tLahxtaX6vvkK?p=preview
正如你所看到的,<p>Hello Mary!</p>
已經存在從後端。但其基本上與ng-repeat
循環中的項目相同。
我想點擊加載新的並重新加載包含後端元素的MainCtrl
中的所有內容。
如何做到這一點?
因爲現在ng-repeat
不知道元素不在其循環中。我正在考慮使用jQuery手動刪除DOM(從後端),但這似乎不是正確的做法。
有什麼建議嗎?
你能給'
你好瑪麗添加一個屬性!
'? –@DavinTryon是的,我可以修改後端HTML。你的建議是什麼? –
正如你所說,從Dom刪除不是角度的方式,所以要避免這樣的事情。考慮你的應用程序的體系結構。你從後端打印出一個名稱,然後循環前端的名字 - 這真的有必要嗎? –