저는 새로운 VueJS 학생이고 지시어를 사용하려고했는데 왜 요소를 가져올 수 없는지 알지 못하기 때문에 중단되었습니다. 내가 뭘 잘못하고 있니? 방금 el
요소를 얻고 싶습니다.VueJS 2 지시어 삽입 이벤트
여기에 JSFiddle 또는 아래 코드가 있습니다.
HTML
<div class="container" id="vue-app">
<ul>
<li v-test v-for="item in itens">
{{item.name}}
</li>
</ul>
<span id="directiveLog"></span>
</div>
JS
Vue.directive('test', {
inserted: function (el) {
document.querySelector('#directiveLog').innerHTML = el;
}
})
new Vue({
el: '#vue-app',
data: {
itens:[
{name: "hello"},
{name: "fun"},
{name: "world"}
]
}
});
콘솔 로그를 확인하십시오 : 당신이 그 일에서 당신을 방지하는 URL에서 핫 링크하고 있기 때문에 VueJS가로드되지 않습니다. [cdnjs] (https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.13/vue.min.js)와 같은 CDN에서로드 해보십시오. 지시어가 작동해야합니다 : https ://jsfiddle.net/teddyrised/7r9x60ps/1/. HTML 노드는 객체이므로 노드 (객체)에 innerHTML (문자열을 허용)을 설정하면 작동하지 않습니다. 'document.querySelector ('# directiveLog'). innerHTML = el.innerHTML' – Terry
Vue가로드됩니다. 그렇지 않으면 아무것도 렌더링되지 않습니다. 그것은 두 번로드 된 문제이고 두 번째는 Vue 1입니다. – Bert