반응형
지시문에 데이터를 전달하시겠습니까?
문서에는 다양한 인수를 디렉티브에 전달할 수 있다고 기재되어 있습니다.
다음 값을 전달하고 싶습니다.
v-my-directive="test"
하지만 다음과 같은 오류가 발생합니다.
Property or method "test" is not defined on the instance but referenced during render
지시문에 문자열을 전달하려면 어떻게 해야 합니까?
값은 정규 JavaScript 표현식입니다.이 방법으로 문자열을 전달하려면'test', 사용방법:
v-my-directive="'test'"
데모:
Vue.directive('my-directive', function (el, binding) {
console.log('directive expression:', binding.value) // => "test"
})
new Vue({
el: '#app',
data: {
message: 'Hello Vue.js!'
}
})
<script src="https://unpkg.com/vue"></script>
<div id="app">
<p>{{ message }}</p>
<div v-my-directive="'test'"></div>
</div>
문자열을 따옴표로 묶어야 합니다.따옴표로 묶지 않으면 이 문자열은test컴포넌트 컨텍스트의 변수(그것들)props또는data):
v-my-directive="'test'"
커스텀 디렉티브 내에서 전달된 값에 액세스 할 수 있습니다.binding.value:
Vue.directive('demo', {
bind: function (el, binding, vnode) {
var s = JSON.stringify
el.innerHTML =
'name: ' + s(binding.name) + '<br>' +
'value: ' + s(binding.value) + '<br>' +
'expression: ' + s(binding.expression) + '<br>' +
'argument: ' + s(binding.arg) + '<br>' +
'modifiers: ' + s(binding.modifiers) + '<br>' +
'vnode keys: ' + Object.keys(vnode).join(', ')
}
})
이 가이드의 「커스텀 디렉티브」의 장을 참조해 주세요.
언급URL : https://stackoverflow.com/questions/50005159/pass-data-to-a-directive
반응형
'programing' 카테고리의 다른 글
| 문자열이 Java에서 정수를 나타내는지 확인하는 가장 좋은 방법은 무엇입니까? (0) | 2022.08.28 |
|---|---|
| JVM에서 사용하도록 프록시를 설정하려면 어떻게 해야 합니까? (0) | 2022.08.28 |
| 컴파일러는 다른 유형의 루프에 비해 do-while 루프에 대해 더 나은 코드를 생성합니까? (0) | 2022.08.28 |
| 왜 scanf를 사용하여 문자열 버퍼를 읽으면 앰퍼샌드(&)가 있는 경우와 없는 경우 모두 동작합니까? (0) | 2022.08.28 |
| IntelliJ IDEA에서 Eclipse의 Ctrl+O(개요 표시) 단축키는 무엇입니까? (0) | 2022.08.28 |