입력 된 입력 값을 선택하려고 시도 할 때마다이 오류가 발생합니다 : Uncaught TypeError: Cannot assign to read only property 'highlight' of
. 그것은 어떤 객체를 가리키는 지 알려주지 않으며 TypeAhead.min.js 파일에서 발생하기 때문에 내 코드의 어떤 행이 그것을 발생시키고 있는지 정확히 말할 수 없습니다. 컨텍스트에 대한TypeAhead.js 하이라이트 TypeError
$(".articles.new").ready ->
engine = new Bloodhound {
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('name'),
queryTokenizer: Bloodhound.tokenizers.whitespace,
local: autocomplete_items
}
engine.initialize()
$('#auto_complete').typeahead { hint: true, highlight: true, minLength: 1 },
{ name: "names", displayKey: "name", source: engine.ttAdapter()}
$('#auto_complete').on 'typeahead:selected', (event, selection) ->
alert selection.name
$('#auto_complete').typeahead 'setQuery', ''
event.stopPropagation()
return
return
: 여기에 내가 설정하고 입력 값을 캡처하는 데 사용하는 코드입니다 auto_complete 항목은 이름 속성 내 컨트롤러에서 객체의 배열입니다. Ruby on Rails 4.1.4에서 작업하고 있습니다.
이 오류를 해결하려면 어떻게해야합니까? 그것을 일으키는 원인은 무엇입니까?
val 함수가 methods 배열에 정의되어 있고 이미 초기화되었지만 setQuery는 그렇지 않다는 사실과 관련이있는 것으로 보입니다. setQuery의 초기화로 인해 오류가 발생합니다. val을 사용하는 것이 올바른 방법입니다. –