> 웹 프론트엔드 > JS 튜토리얼 > element-ui 함수가 ivew를 대체합니다.

element-ui 함수가 ivew를 대체합니다.

php中世界最好的语言
풀어 주다: 2018-06-12 14:54:39
원래의
2790명이 탐색했습니다.

이번에는 ivew를 대체할 element-ui 함수를 가져오겠습니다. ivw를 element-ui 함수로 대체할 때 주의사항은 무엇인가요?

구현원리

element-ui 소스코드 수정, 소스코드에서 트리 모듈 추출

그런 다음 해당 요소의 자체 체크박스와 기타 컴포넌트를 iview의 체크박스로 수정하고 호환 가능하게 만듭니다.

마지막으로 요소 스타일 수정 iview 스타일에 몇 가지 스타일도 직접 추가했습니다

새 트리 구성 요소는 요소의 논리, iview의 스타일이라고 할 수 있습니다

<template>
 <p
  @click.stop="handleClick"
  v-show="node.visible">
  <p class="chu-tree-node__content"
   :style="{ &#39;padding-left&#39;: (node.level - 1) * tree.indent + &#39;px&#39; }">
   <span :class="arrowClasses" @click.stop="handleExpandIconClick">
     <Icon v-if="!node.isLeaf" type="arrow-right-b"></Icon>
   </span>
   <Checkbox
    v-if="showCheckbox"
    :value="node.checked"
    :indeterminate="node.indeterminate"
    :disabled="!!node.disabled"
    @click.native.stop
    @on-change="handleCheckChange"></Checkbox>
   <span
    v-if="node.loading"
    class="ivu-load-loop">
   </span>
   <node-content :node="node"></node-content>
  </p>
  <collapse-transition>
   <p
    v-show="expanded">
    <el-tree-node
     :render-content="renderContent"
     v-for="child in node.childNodes"
     :key="getNodeKey(child)"
     :node="child"
     @node-expand="handleChildNodeExpand">
    </el-tree-node>
   </p>
  </collapse-transition>
 </p>
</template>
로그인 후 복사

Modify handlerCheckChange는 iview의 체크박스 구성 요소의 논리가 다르기 때문에 기능이 다르므로 호환되어야 합니다

handleCheckChange(ev) {
    this.node.setChecked(ev, !this.tree.checkStrictly);
   },
로그인 후 복사

완성된 프로젝트 구조를 추출하여 npm 플러그인으로 캡슐화합니다

사용 지침

iview를 설치해야 합니다

모든 스타일은 ivew로 대체됩니다.

기능은 모두 element-ui와 동일합니다

npm i chu-tree-iview
로그인 후 복사
import chuView from 'chu-tree-iview'
Vue.use(chuView)
<chu-tree></chu-tree>
로그인 후 복사

사용 설명서 element-ui와 완전히 동일합니다

이 기사의 사례를 읽은 후 방법을 마스터했다고 믿습니다. 더 흥미로운 정보를 보려면 결제하세요. PHP 중국어 웹사이트의 다른 관련 기사에 주목하세요!

추천 도서:

vue.js+created 사용 방법

json과 배열 키 값 간의 대소문자 변환

위 내용은 element-ui 함수가 ivew를 대체합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿