1
假設我正在爲散佈圖創建一個指令,該指令應該有一整套可配置的屬性。 據我所知,我可以設置這些個人scope屬性:AngularJS指令 - 傳遞選項對象vs單獨屬性的優缺點?
directive('scatterChart', ['$http', function($http){
scope: {
data: "=?",
selected : "=?",
indicatorX : "=?",
indicatorY : "=?",
indicatorSize : "=?"
}
或者通過與選項的對象:
directive('scatterChart', ['$http', function($http){
scope: {
model: "=?",
}
在後一種情況下,我也不會回去和調整我的標記,這樣就足夠了:
<div class="scatter-chart" model="scatter.options">
我的指令內就足夠觀看物體觸發重新渲染:
scope.$watch('model', function(newVal, oldVal) {
render();
}, true);
那麼,我應該採用哪種方法,爲什麼?