이번에는 vue에서 제공/삽입 사용 사례 분석을 가져오겠습니다. vue에서 제공/삽입 사용 시 주의 사항은 무엇입니까? 다음은 실제 사례입니다.
머리말
최근에 element-ui의 소스 코드를 보다가 attribute:inject를 발견했습니다. 그런 다음 공식 웹사이트에서 Provider/inject
provider/inject를 확인했습니다. 간단히 말하면, 변수를 제공하려면 상위 구성 요소에 공급자를 전달한 다음 하위 구성 요소에 주입을 통해 변수를 주입합니다.
하위 구성 요소의 깊이에 관계없이 주입이 호출되는 한 공급자의 데이터를 주입할 수 있다는 점에 유의해야 합니다. 현재 상위 구성 요소의 prop 속성에서만 데이터를 가져오는 것으로 제한되지 않습니다.
우리의 추측을 검증해 보겠습니다.
먼저: 상위 구성 요소를 정의합니다
<template> <p> <childOne></childOne> </p> </template> <script> import childOne from '../components/test/ChildOne' export default { name: "Parent", provide: { for: "demo" }, components:{ childOne } }
여기서 상위 구성 요소에 이 변수를 제공합니다.
second는 하위 구성 요소를 정의합니다.
<template> <p> {{demo}} <childtwo></childtwo> </p> </template> <script> import childtwo from './ChildTwo' export default { name: "childOne", inject: ['for'], data() { return { demo: this.for } }, components: { childtwo } } </script>
third는 또 다른 하위 구성 요소를 정의합니다
<template> <p> {{demo}} </p> </template> <script> export default { name: "", inject: ['for'], data() { return { demo: this.for } } } </script>
2개의 하위 구성 요소에서는 jnject를 사용하여 제공에서 제공하는 변수를 주입하고 이를 데이터 속성에 제공합니다.
공식 웹사이트에는 해당 예제가 Vue 2.2.1 이상에서만 작동한다고 명시되어 있습니다. 이 버전 이하에서는 props와 데이터가 초기화된 후에 주입된 값을 얻습니다.
실행 후 결과 확인
위의 예에서 볼 수 있듯이 상위 컴포넌트에서 호출되는 한 상위 컴포넌트의 라이프 사이클 내에서 모든 하위 컴포넌트는 inject를 호출할 수 있습니다. . 상위 구성 요소의 값을 주입합니다.
이 기사의 사례를 읽은 후 방법을 마스터했다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!
추천 자료:
JavaScript DOM 요소를 추가, 삭제 및 수정하는 단계에 대한 자세한 설명
Vue는 vee-validate를 사용하여 양식을 자세히 확인합니다
위 내용은 vue에서 제공/주입의 사용 사례 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!