TypeScript

TS | insertAdjacentElement 사용하여 자식 element 만들기

2022. 5. 16. 20:04
목차
  1. Element.insertAdjacentElement()
  2. 타입스크립트에서 부모 요소에 자식요소 추가하기

예전에 인스타그램 클론을 하면서 

댓글을 입력하면 document.createElement 를 사용하여 댓글 element를 추가하여 업데이트 하는 기능을 구현했었다.

 

타입스크립트를 사용하여 이처럼 부모요소에 element를 생성하는 방법에 대해서 알아보고자 한다.

타입스크립트로 이 기능을 구현하기 위해서는 우선 inserAdjacentElement 메서드에 대해 공부해야한다.

 

Element.insertAdjacentElement()

Element 인터페이스의 메서드 중 하나인 insertAdjacentElement 는 주어진 노드요소를 주어진 위치에 넣어주는 역할을 한다.

insertAdjacentElement(position, element);

position 에는 targetElement와 연관된 4가지 위치상태를 나타낸다.

  • beforebegin
  • afterbegin
  • beforeend
  • afterend

position name 에 따른 위치

// beforebegin
<div class="parent">
	// afterbegin
	wow
    // beforeend
</div>
// afterend

 

타입스크립트에서 부모 요소에 자식요소 추가하기

// child.ts
export class ChildComponent {
  private element: HTMLElement;
  constructor() {
    this.element = document.createElement("div");
    this.element.setAttribute("class", "contentItem");
    this.element.textContent = "This is child component";
  }

  attachTo(parent: HTMLElement, position: InsertPosition = "afterbegin") {
    parent.insertAdjacentElement(position, this.element);
  }

내부에서 element를 생성해서 사용할 것이므로

private 으로 element 를 선언한다. ( element = 생성할 자식요소 )

그리고 생성자 함수로 새로 생성될 자식요소를 생성한다.

 

attachTo 메소드

childComponent 클래스를 사용하여 생성된 요소를 원하는 위치에 집어넣기 위해 사용될 메소드이다.

parent parameter : 새로 만든 요소를 집어넣을 target 요소

position parameter : 새로 생성된 요소가 삽입될 target 요소와 연관된 위치 

// App.ts
import { ChildComponent } from "./components/child.js";

class App {
  private readonly child: ChildComponent;
  constructor(appRoot: HTMLElement) {
    this.child = new ChildComponent();
    this.child.attachTo(appRoot);
  }
}

new App(document.querySelector(".content") as HTMLElement);

ChildComponent 클래스를 가져와서 요소를 생성하고 appRoot 를 target 으로 하여 attachTo 메소드를 사용해서 요소를 삽입한다. 

'TypeScript' 카테고리의 다른 글

Type Assertion, 타입 단언의 올바른 사용법 고민하기  (0) 2023.09.01
TypeScript | eventListener void 타입 에러 (Feat. onClick)  (0) 2022.02.11
  1. Element.insertAdjacentElement()
  2. 타입스크립트에서 부모 요소에 자식요소 추가하기
'TypeScript' 카테고리의 다른 글
  • Type Assertion, 타입 단언의 올바른 사용법 고민하기
  • TypeScript | eventListener void 타입 에러 (Feat. onClick)
3jun
3jun
3jun
3jun
3jun
전체
오늘
어제
  • 분류 전체보기 (94)
    • 프로젝트 (5)
    • Web (9)
    • JavaScript (19)
    • React (12)
    • 알고리즘 (31)
    • Git (3)
    • AWS (3)
    • TypeScript (3)
    • CS (2)
    • Error (6)
    • 회고 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • msw
  • 프로그래머스 코딩테스트 js
  • state
  • 백준js
  • 백준 js
  • this.props.history.push
  • JavaScript
  • Promise
  • outer environment
  • 프로그래머스 코딩테스트
  • 자바스크립트
  • 백준 알고리즘
  • react
  • 백준 온라인저지
  • msw 에러
  • 프로그래머스 js
  • airbnb style guide
  • 프로그래머스 코테
  • 백준 코테
  • 유효성 로직

최근 댓글

최근 글

hELLO · Designed By 정상우.
3jun
TS | insertAdjacentElement 사용하여 자식 element 만들기
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.