Facebook フィード ダイアログのディレクティブを作成していて、アイテム タイトルをディレクティブに追加しようとしていますが、{{current_hotel_title}} の文字列にスペースが含まれている場合は常に angularjs が次のエラーをスローすることに気付きました。
Uncaught Error: Syntax Error: Token 'word2' is an unexpected token at column 4 of the expression [word1 word2] starting at [word2].
指令:
.directive('fb2Share', function(){
return function(scope, element, attrs){
attrs.$observe('fb2Share', function(value) {
//Directive click handler
$(element).click(function(){
scope.$watch(attrs.fb2Title, openDialog);
});
//Open FB feed dialog
var openDialog = function() {
console.log(attrs.fb2Title);
};
});
};
})
HTML:
<a href="javascript:void(0);" data-fb2-share data-fb2-title="{{current_hotel_title}}">Share on Facebook</a>
現在のホテルのタイトルに一重引用符を追加すると、次のようになります。
data-fb2-title="'{{current_hotel_title}}'"
エラーは表示されなくなりましたが、FB共有ダイアログで不要な単一引用符が表示されるという問題があります。