Vue.js는 사용자 지정 지시문을 사용하여 구성 요소 옵션 (prop) 추가

카 이오 타리 파

Custom내 자신의 지시문 ( v-color)을 사용하는 구성 요소 가 있습니다 .

<custom v-color="color" />

그리고 내가 정의하는 내 스크립트 this.colorthis.changeColor():

{
   data () {
     return {
       color: red
     }
   },

   methods: {
     changeColor (color) {
       this.color = color
     }
   }
}

어떻게의 코드를 쓸 수 v-color변화에 지침을 v-bind:color<custom />?

즉,의 값은 구성 요소가로드 v-bind:colorred때입니다. 경우 this.color방법 (예 :로 변경된다 this.changeColor('blue'))의 값을 v-bind:color자동으로 업데이트 할 것이다.

v-color여러 번 사용할 것이기 때문에 "시계"를 피하는 솔루션을 고맙게 생각합니다 .

데릭 폴라드

이와 같은 것이 당신이 찾고있는 것에 맞는 것 같습니다 :

Vue.component('third-party-component', {
  props: ['color'],
  template: '<div :style="{ color }" v-cloak>{{color}}</div>'
});

Vue.component('hoc-component', {
  props: ['color'],
  computed: {
    transformedColor () {
      if (this.color === "blu") return "blue";
      if (this.color === "re") return "red";
      if (this.color == "or") return "orange";
      if (this.color == "pur") return "purple";
      return this.color;
    }
  },
  template: '<third-party-component  :color="transformedColor" />'
});

new Vue({
  el: '#app'
});
<html>
<body>
  <div id="app" v-cloak>
    <div>
      <hoc-component color="blu"></hoc-component>
      <hoc-component color="or"></hoc-component>
      <hoc-component color="re"></hoc-component>
      <hoc-component color="pur"></hoc-component>
      <hoc-component color="pink"></hoc-component>
      <hoc-component color="green"></hoc-component>
    </div>
  </div>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
</body>
</html>

여기에서는 필요한 데이터를 수정하고 타사 구성 요소에 전달하기 위해 Higher Order Component 패턴을 활용합니다. 이는 지시문의 부작용없이 데이터 변경을 변경하고 처리하는 훨씬 더 효과적인 방법입니다.

도움이 되었기를 바랍니다!

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

사용자 지정 vue 구성 요소에 옵션을 전달하는 방법은 무엇입니까?

분류에서Dev

vue 지시문을 사용하여 요소에 대한 사용자 정의 속성을 추가하는 방법은 무엇입니까?

분류에서Dev

v-model 값이 변경 될 때 사용자 지정 Vue 선택 구성 요소가 선택한 옵션을 업데이트하지 않음

분류에서Dev

v-model 값이 변경 될 때 사용자 지정 Vue 선택 구성 요소가 선택한 옵션을 업데이트하지 않음

분류에서Dev

vue js에서 구성 요소가 사용자 정의 구성 요소가 아님을 알리는 방법 (<menuitem>)

분류에서Dev

"vue2-google-maps"구성 요소의 Google지도에 사용자 지정 이미지가있는 마커를 추가하는 방법은 무엇입니까?

분류에서Dev

vuejs 구성 요소에 사용자 지정 속성 추가

분류에서Dev

IE에서 .innerHTML을 사용하여 옵션 요소를 추가하는 것이 작동하지 않습니다.

분류에서Dev

Vue.js 구성 요소에 사용자 지정 스크립트로드

분류에서Dev

React JS : 사용자 지정 경로 구성 요소에 구성 요소가 표시되지 않습니까?

분류에서Dev

사용자 정의 HTML 옵션 페이지이지만 추가 기능 관리자 탭과 같은 구성 요소에 액세스

분류에서Dev

각도 구성 요소에 사용자 지정 방법을 추가하는 방법은 무엇입니까?

분류에서Dev

계산 된 속성을 사용하는 구성 요소가있는 Vue JS 정렬 날짜

분류에서Dev

바인딩 속성을 사용하는 지시문을 사용하여 다른 요소에 요소를 추가하려면 어떻게해야합니까?

분류에서Dev

사용자 정의 javax 유효성 검사 메시지에 요소 이름을 추가하는 방법

분류에서Dev

Vue 사용자 지정 필터링 입력 구성 요소

분류에서Dev

요소에 속성을 할당하는 사용자 지정 지시문

분류에서Dev

요소에 속성을 할당하는 사용자 지정 지시문

분류에서Dev

typescript 및 구성 요소 스타일 구문을 사용하여 vue.js에 Google 인증을 추가하는 방법

분류에서Dev

React Leaflet- useLeaflet으로 사용자 지정 구성 요소를 추가하는 방법

분류에서Dev

CSS 가상 요소를 사용하여 사용자 지정 도구 설명을 만드는 방법

분류에서Dev

기능 구성 요소에서 플러그인 지시문을 사용하는 방법-Vue 2

분류에서Dev

Vue에서 구성 요소를 통해 반복-반복의 사용자 지정 요소에는 'v-bind : key'지시문이 필요합니다.

분류에서Dev

사용자 지정 하위 구성 요소가 추가되었지만 표시되지 않음

분류에서Dev

vee-validate ValidationObserver 구성 요소의 Vue 사용자 지정 요소 오류

분류에서Dev

AngularJS (TypeScript)의 ng-options에 도구 설명을 추가하는 사용자 지정 지시문 작성

분류에서Dev

사용자 지정 옵션으로 Vue 플러그인 작성

분류에서Dev

* ngFor 구조 지시문을 사용하는 동안 추가 td 요소가 표시됨

분류에서Dev

내비게이션 가드를 사용할 때 렌더링되지 않는 중첩 된 Vue 구성 요소

Related 관련 기사

  1. 1

    사용자 지정 vue 구성 요소에 옵션을 전달하는 방법은 무엇입니까?

  2. 2

    vue 지시문을 사용하여 요소에 대한 사용자 정의 속성을 추가하는 방법은 무엇입니까?

  3. 3

    v-model 값이 변경 될 때 사용자 지정 Vue 선택 구성 요소가 선택한 옵션을 업데이트하지 않음

  4. 4

    v-model 값이 변경 될 때 사용자 지정 Vue 선택 구성 요소가 선택한 옵션을 업데이트하지 않음

  5. 5

    vue js에서 구성 요소가 사용자 정의 구성 요소가 아님을 알리는 방법 (<menuitem>)

  6. 6

    "vue2-google-maps"구성 요소의 Google지도에 사용자 지정 이미지가있는 마커를 추가하는 방법은 무엇입니까?

  7. 7

    vuejs 구성 요소에 사용자 지정 속성 추가

  8. 8

    IE에서 .innerHTML을 사용하여 옵션 요소를 추가하는 것이 작동하지 않습니다.

  9. 9

    Vue.js 구성 요소에 사용자 지정 스크립트로드

  10. 10

    React JS : 사용자 지정 경로 구성 요소에 구성 요소가 표시되지 않습니까?

  11. 11

    사용자 정의 HTML 옵션 페이지이지만 추가 기능 관리자 탭과 같은 구성 요소에 액세스

  12. 12

    각도 구성 요소에 사용자 지정 방법을 추가하는 방법은 무엇입니까?

  13. 13

    계산 된 속성을 사용하는 구성 요소가있는 Vue JS 정렬 날짜

  14. 14

    바인딩 속성을 사용하는 지시문을 사용하여 다른 요소에 요소를 추가하려면 어떻게해야합니까?

  15. 15

    사용자 정의 javax 유효성 검사 메시지에 요소 이름을 추가하는 방법

  16. 16

    Vue 사용자 지정 필터링 입력 구성 요소

  17. 17

    요소에 속성을 할당하는 사용자 지정 지시문

  18. 18

    요소에 속성을 할당하는 사용자 지정 지시문

  19. 19

    typescript 및 구성 요소 스타일 구문을 사용하여 vue.js에 Google 인증을 추가하는 방법

  20. 20

    React Leaflet- useLeaflet으로 사용자 지정 구성 요소를 추가하는 방법

  21. 21

    CSS 가상 요소를 사용하여 사용자 지정 도구 설명을 만드는 방법

  22. 22

    기능 구성 요소에서 플러그인 지시문을 사용하는 방법-Vue 2

  23. 23

    Vue에서 구성 요소를 통해 반복-반복의 사용자 지정 요소에는 'v-bind : key'지시문이 필요합니다.

  24. 24

    사용자 지정 하위 구성 요소가 추가되었지만 표시되지 않음

  25. 25

    vee-validate ValidationObserver 구성 요소의 Vue 사용자 지정 요소 오류

  26. 26

    AngularJS (TypeScript)의 ng-options에 도구 설명을 추가하는 사용자 지정 지시문 작성

  27. 27

    사용자 지정 옵션으로 Vue 플러그인 작성

  28. 28

    * ngFor 구조 지시문을 사용하는 동안 추가 td 요소가 표시됨

  29. 29

    내비게이션 가드를 사용할 때 렌더링되지 않는 중첩 된 Vue 구성 요소

뜨겁다태그

보관