Eğer bariz bir şey kaçırıyorsam özür dilerim. Benzer sorunlara baktım ama bu genellikle {{...}}
'u kullanan birisine düşüyor, ancak bu durumda neyin yanlış olduğunu göremiyorum.Angular neden {{string}} ifadesini ({string}) bir ifade olarak ayrıştırmaya çalışır?
Angular otomatik tamamlama/yazım denetimi gerçekleştirmeye çalışıyorum (angucomplete-alt) ama tuhaf bir sorunla karşılaştım.
Error: [$parse:syntax] Syntax Error: Token '{' invalid key at column 2 of the expression [{{placeholder}}] starting at [{placeholder}}]. http://errors.angularjs.org/1.5.3/$parse/syntax?p0=%7B&p1=invalid%20key&p2=2&p3=%7B%7Bplaceholder%7D%7D&p4=%7Bplaceholder%7D%7D at angular.1.5.3.min.js:68 at Object.AST.throwError (angular.1.5.3.min.js:14006) at Object.AST.object (angular.1.5.3.min.js:13993) at Object.AST.primary (angular.1.5.3.min.js:13899) at Object.AST.unary (angular.1.5.3.min.js:13887) at Object.AST.multiplicative (angular.1.5.3.min.js:13874) at Object.AST.additive (angular.1.5.3.min.js:13865) at Object.AST.relational (angular.1.5.3.min.js:13856) at Object.AST.equality (angular.1.5.3.min.js:13847) at Object.AST.logicalAND (angular.1.5.3.min.js:13839)
garip bir şey yönergesi özel bir şey yapıyor gibi görünen olmamasıdır: yazar açıklar ama Açısal konsolunda aşağıdaki hatayı atar gibi tam uygulamaya konmuştur. Yer tutucu placeholder: '@'
olarak geçirilir ve yönerge şablonunda placeholder="{{placeholder}}"
olarak verilir. Bildiğim kadarıyla doğru.
Ana uygulama modülüme bağımlılık olarak angucomplete-alt
bildirdim. Bu otomatik tamamlama (Bence nasıl ayarlandığını benim denetleyicisi veri bağlamak için değiştirildi selected-object
ve local-data
ile yazarlar ilk demo tam bir kopyası:
<div ng-controller="RosterController as roster">
<div angucomplete-alt id="ex1"
placeholder="Search crew"
maxlength="50"
pause="100"
selected-object="roster.selectedCrew"
local-data="roster.crew"
search-fields="name"
title-field="name"
minlength="1"
input-class="form-control form-control-small"
match-class="highlight">
</div>
</div>
Ve bu benim denetleyicisi ilgili parçasıdır:
Ben Açısal 1.4.6 (yazar kendi demo sayfasında kullandığı versiyon) ama aynı hataya geri düşen çalıştımangular
.module('aa.roster')
.controller('RosterController', RosterController);
function RosterController() {
var vm = this;
vm.crew = [
{ name: 'abc', id: 1 },
{ name: 'def', id: 2 },
{ name: 'ghi', id: 3 }
];
}
devam etmektedir.
denemek ve single olarak{{placeholder}}
ayrıştırmak Eğik neden olan şey nedir
Sadece dizgeyi çıktılamak yerine kaşlı ayraç ifadesi?
Gerçek kodu, olay daha iyi bir JSFiddle gönder – Max
Bir JSFiddle (bazı nedenlerle çalışmayacaktır, hatta temel Açısal kavramlarla bile). Ne var ki, çok basit olmasına rağmen soruyu bazı kodlarla güncelleyeceğim. –
Sadece bir gözlem, ancak bu kütüphane oldukça eski. Demo sayfası [burada] (http://darylrowland.github.io/angucomplete/) kullanıyor: AngularJS v1.2.9 Akılda tutulması gereken bir şey olabilir. – segFault