less than 1 minute read


Vue 기반 웹뷰에서 네이티브간 인터페이스 방법을 알아보자.

보통 스크립트에 callback 함수를 정의하고 네이티브에서 해당 함수명을 호출하는 방식으로 작업을 하는데, Vue에서는 컴포넌트에 정의된 메소드를 네이티브에서 호출할 수 없다는 문제가 있다.

네이티브에서 Vue.js의 함수들을 호출하기 위해서는 글로벌로 선언을 해주어야한다.

네이티브에서 호출할 함수명으로 스크립트에서 함수를 생성하고 window 영역에 등록해주면 네이티브에서 함수 호출이 가능하다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<template>
	<div>

	</div>
</template>

<script>
export default {
	data(){
		return {

		}
	},
  mounted(){
    window.callWebFunc() = this.callWebFunc();
  },
  methods:{
    callWebFunc(){
      console.log("success");
    }
  }
}