我正在編寫我的第一個指令 - 它本質上只是jquery中編寫的freebase搜索小部件的封裝。從角度指令返回數據
我想使指令的獨立的應用程序(與僅依賴是外部CSS和jQuery)。
的指令Here is a plunkr因爲它是現在。
而指令本身:
directive('suggest', function() {
return {
restrict: 'E',
template: "<input type='text'>",
replace:true,
link: function(scope, element, attrs) {
var language = 'en'; //set english as default language
if (attrs.lang){
language = attrs.lang;
attrs.$observe('lang', function(value) {
console.log("lang val " + value);
language = value;
});
}
$(element).suggest({
"lang": language
})
.bind("fb-select", function(e, data) {
console.log(data);
});
}
};
});
當用戶從下拉菜單中選擇項,下面的函數運行:
.bind("fb-select", function(e, data) {
console.log(data);
});
什麼是餵養從數據的最佳實踐選擇使用它的應用程序?
感謝您的回答。當你說我需要處理指令中的初始綁定時,你能解釋一下你的意思嗎?你指的是scope.myModel = data;線? – bornytm
我似乎無法得到這個工作 - 我已更新plunker – bornytm
@bornytm這個指令應該做什麼?即期望的行爲?需要指出的一點是,你在''directive'定義中傳遞'lang'通過隔離範圍,但是你用'attrs。$ observe'來觀察它,如果它通過一個你使用scope的範圍$ watch','attrs。$ observe'用於觀察屬性參數而不是範圍參數。我建議你看看周圍的角度指令是如何創建的,有很多漂亮的博客。 –