웹 프론트엔드 JS 튜토리얼 렌더 메소드 사용에 대한 자세한 그래픽 설명

렌더 메소드 사용에 대한 자세한 그래픽 설명

Mar 23, 2018 am 11:47 AM
render 그래픽 및 텍스트 상해

이번에는 렌더링 방법을 사진과 텍스트로 자세히 설명하겠습니다. 렌더링 방법을 사용할 때 주의사항은 무엇인가요? 실제 사례를 살펴보겠습니다.

먼저 공식 웹사이트의 데모에 대한 개인적인 이해에 대해 이야기하겠습니다.

<!DOCTYPE html>
<html>
<head>
  <title>Vue的render方法说明</title>
  <script src="vue.js"></script>
</head>
<body>
<p id="app">
  <child :level="1">
    hello world
  </child>
</p>
<script type="text/x-template" id="anchored-heading-template">
  <p>
    <h1 v-if="level === 1">
      <slot></slot>
    </h1>
    <h2 v-if="level === 2">
      <slot></slot>
    </h2>
    <h3 v-if="level === 3">
      <slot></slot>
    </h3>
    <h4 v-if="level === 4">
      <slot></slot>
    </h4>
    <h5 v-if="level === 5">
      <slot></slot>
    </h5>
    <h6 v-if="level === 6">
      <slot></slot>
    </h6>
  </p>
</script>
<script type="text/javascript">
Vue.component('child', {
  template: '#anchored-heading-template',
  props: {
    level: {
      type: Number,
      required: true
    }
  }
});
  new Vue({
    el: "#app"
  })
</script>
</body>
</html>
로그인 후 복사
템플릿

을 사용하여 구성 요소를 정의하는 방법은 매우 직관적이지만 이로 인해 코드가 너무 길어집니다. 렌더링 메소드를 사용할 수 있습니다

<!DOCTYPE html>
<html>
<head>
  <title>Vue的render方法说明</title>
  <script src="vue.js"></script>
</head>
<body>
<p id="app">
  <child :level="1">
    hello world
  </child>
</p>
<script type="text/javascript">
Vue.component('child', {
  render:function (createElement) {
    var body=this.$slots.default;
    //this.$slots返回了一个组件分发下来的元素和内容
    //this.$slots.default返回了具名的内容
    return createElement(
      'h'+this.level,
      //this.level是利用v-bind注入到组件中的level
      body
    )
  },
  //因为vue中组件父组件无法向子组件注入内容。所以我们需要通过
  //v-bind定义一个key,value向子组件注入内容。所要接收的值也需要在定义组件时的props属性中的定义一下
  props:{
    level:{
    }
  }
});
  new Vue({
    el: "#app"
  })
</script>
</body>
</html>
로그인 후 복사
다음은 distribution이라는 슬롯의 데모입니다. createElement 사용법 소개:

<!DOCTYPE html>
<html>
<head>
  <title>Vue的render方法说明</title>
  <script src="vue.js"></script>
</head>
<body>
<p id="app">
  <child>
    <p slot="header">this is header</p>
    <p slot="center">this is center</p>
    <p slot="footer">this is footer</p>
  </child>
</p>
<script type="text/javascript">
  Vue.component('child', {
    render: function (createElement) {
     var header=this.$slots.header;
     var center=this.$slots.center;
     var footer=this.$slots.footer;
//createElement第一个参数是标签名,第二个参数是值
     return createElement('p',[
       createElement('p', header),
       createElement('p', center),
       createElement('p', footer),
     ])
    }
  });
  new Vue({
    el: "#app"
  })
</script>
</body>
</html>
로그인 후 복사
생성된 컴포넌트의 데모 결과는 다음과 같습니다.

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

추천 자료:

바이두 지도에 마커와 폴리라인 표시

사용자 휴대폰 번호 기능을 얻기 위한 WeChat 미니 프로그램 개발 방법

위 내용은 렌더 메소드 사용에 대한 자세한 그래픽 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Win11에서 관리자 권한을 얻는 방법에 대한 자세한 설명 Win11에서 관리자 권한을 얻는 방법에 대한 자세한 설명 Mar 08, 2024 pm 03:06 PM

Win11에서 관리자 권한을 얻는 방법에 대한 자세한 설명

Oracle SQL의 나누기 연산에 대한 자세한 설명 Oracle SQL의 나누기 연산에 대한 자세한 설명 Mar 10, 2024 am 09:51 AM

Oracle SQL의 나누기 연산에 대한 자세한 설명

PHP 모듈로 연산자의 역할과 사용법에 대한 자세한 설명 PHP 모듈로 연산자의 역할과 사용법에 대한 자세한 설명 Mar 19, 2024 pm 04:33 PM

PHP 모듈로 연산자의 역할과 사용법에 대한 자세한 설명

리눅스 시스템콜 system() 함수에 대한 자세한 설명 리눅스 시스템콜 system() 함수에 대한 자세한 설명 Feb 22, 2024 pm 08:21 PM

리눅스 시스템콜 system() 함수에 대한 자세한 설명

C 언어 학습 경로에 대한 상세한 분석 C 언어 학습 경로에 대한 상세한 분석 Feb 18, 2024 am 10:38 AM

C 언어 학습 경로에 대한 상세한 분석

Linux 컬 명령에 대한 자세한 설명 Linux 컬 명령에 대한 자세한 설명 Feb 21, 2024 pm 10:33 PM

Linux 컬 명령에 대한 자세한 설명

Promise.resolve()에 대해 자세히 알아보세요. Promise.resolve()에 대해 자세히 알아보세요. Feb 18, 2024 pm 07:13 PM

Promise.resolve()에 대해 자세히 알아보세요.

Mpeppe(MPEPE) 코인: 렌더(RNDR) 및 인터넷 컴퓨터(ICP)에서 투자자를 끌어들이는 암호화폐 시장의 새로운 경쟁자 Mpeppe(MPEPE) 코인: 렌더(RNDR) 및 인터넷 컴퓨터(ICP)에서 투자자를 끌어들이는 암호화폐 시장의 새로운 경쟁자 Sep 03, 2024 pm 02:03 PM

Mpeppe(MPEPE) 코인: 렌더(RNDR) 및 인터넷 컴퓨터(ICP)에서 투자자를 끌어들이는 암호화폐 시장의 새로운 경쟁자

See all articles