在輸入指令返回之前,我需要訪問範圍變量。返回前的角度指令範圍
我有一個指令,它返回一個選擇元素與每個卡車的選項。
<tc-vehicle-select label="Truck" selected="activeDailyLog.truck"></tc-vehicle-select>
我需要使用所選值的指令把一個selected
標記相應的選項元素。
.directive('tcVehicleSelect', function(localStorageService) {
/* Get a list of trucks for the organization and populate a select element for
the user to choose the appropriate truck.
*/
var trucks = localStorageService.get('trucks');
var truckHtml;
for (var i = 0; i < trucks.length; i++) {
var truck = trucks[i];
var injectText;
if(truck.description){
injectText = truck.description
}else{
injectText = 'truck ' + truck.id
}
truckHtml += '<option value="' + truck.id + '">' + injectText + '</option>'
}
return {
scope: {
label: '@',
active: '@'
},
replace: true,
template: '<label class="item item-input item-select">' +
'<div class="input-label">{{label}}</div>' +
'<select ng-model="timeLog.truck"><option value="">None</option>' + truckHtml +
'</select></label>'
};
});
我把一切都在這個指令的工作,除了我卡上設置selected
屬性的正確元素。如果我可以訪問傳入的selected
變量,我可以通過插入到truckHtml中來實現,但是我沒有找到使用該變量的示例 - 只使用下面的變量塊中的變量。
任何想法?
更新:也想澄清一下,HTML中的activeDailyLog.truck
有我正在尋找的正確值。
你把回報高於出廠函數的代碼將只被調用一次,即使你有五個指令實例。只是一個友好的說明:) – tasseKATT
有一點,我不知道如果你的ng模型將在孤立的範圍內工作。 – BroiSatse
@BroiSatse我現在看到了,它曾經愚弄過我,我認爲它在工作,但事實上並非如此。所以現在有兩件事情是錯誤的,但我會分開處理這個問題 – awwester