我試圖將數組獲取到模板中,以便可以使用其中的個人值。我的問題是該屬性在我的模板中變成一個字符串,因此不再以{{var [0]}}的形式訪問,而是返回「字符串」的第一個字符,通常是「[」將數組綁定到AngularJS中的指令變量
下面是數據的簡化設置:
"varForward": ["100", "1"],
"varBack": ["1", "100"]
下面是與該數據交互的HTML文件的簡化部分:
<my-customer-vars value="{{varForward}}">
</address-numbers>
<my-customer-vars value="{{varBack}}">
</address-numbers>
,最後這裏是應該更換的部分自定義標籤:
directive('myCustomerVars', function($compile) {
return {
restrict: 'E',
scope: {
value: "@"
},
template:
'<div>'+
'<p class="body-text">Some stuff goes here</p>'+
'<input type="text" name="firstinput" value="{{value[0]}}"> - '+
'<input type="text" name="secondinput" value="{{value[1]}}">'+
'</div>',
replace: true
}
});
所以我在這裏,如果我嘗試使用值[0]我得到[如果我嘗試獲得價值[1]我得到「等等。有沒有在指令模板內使用數組的幫助?
謝謝,工作完美!我對範圍變量並不完全熟悉,但這幫助我清除了很多問題,包括如何使用它們。 – Organiccat
既然我們傳遞的是模型而不是值,我建議'model =「varForward」'然後'scope:{model:'='}'。 –
@ShaiRez這是採取數組並將其放入模板中的最佳方式?我很想知道是否有其他選擇。 –