vue3 에서 jQuery 사용하는 방법을 알아보도록 하겠습니다.
jQuery 설치
npm install --save jquery
jQuery 설치 확인
보통 main.js 파일에 jQuery 를 import 해줍니다.
$ 한개 대신 $$ 두개를 사용하려고 합니다.
import { createApp } from 'vue'
import './style.css'
import App from './AppChart.vue'
import store from './store'
import AfterLoginClass from './js/class/AfterLogin'
import jQuery from 'jquery'
import mitt from 'mitt'
const emitter = mitt();
/*
createApp(App)
.use(store)
.use(mitt)
.mount('#app')
*/
const coforwardUi = createApp(App);
coforwardUi.provide('emitter', emitter)
coforwardUi.use(store);
coforwardUi.use(AfterLoginClass);
coforwardUi.mount('#app');
global.$$ = jQuery;
그러나
Uncaught ReferenceError: $ is not defined 오류 발생
분명 main.js 에서 import 해주고 아래와 같은 방법으로도 해줬지만 계속 오류 발생
global.$ = jQuery;
window.$ = jQuery;
그래서
해당 component 에서 jQuery import 해줌
n-test.vue
<script setup>
import {
ref,
computed,
onMounted,
watch,
inject,
} from 'vue';
import { useStore } from 'vuex';
import $ from 'jquery';
...
...
$('#h11').text('text')
최종 : 각 components 에 jqquery import 하는게 아니라 main.js 한번만 하는 방법
main.js
import { createApp } from 'vue'
import './style.css'
import App from './AppChart.vue'
import store from './store'
import common from './js/common'
//import AfterLoginClass from './js/class/AfterLogin'
import jQuery from 'jquery'
import mitt from 'mitt'
const emitter = mitt();
/*
createApp(App)
.use(store)
.use(mitt)
.mount('#app')
*/
var coforwardUi = createApp(App);
coforwardUi.provide('emitter', emitter)
coforwardUi.use(store);
coforwardUi.use(jQuery);
coforwardUi.use(common);
//coforwardUi.use(AfterLoginClass);
//coforwardUi.config.globalProperties.$common = common;
//coforwardUi.provide('$common', common);
console.log('>>>> main.js');
console.log(coforwardUi.config);
window.coforwardUi = coforwardUi;
global.$ = jQuery;
window.$common = common;
coforwardUi.mount('#app');
이 .mount()메서드는 모든 앱 구성 및 자산 등록이 완료된 후에 항상 호출되어야 합니다.
또한 자산 등록 방법과 달리 반환 값은 응용 프로그램 인스턴스가 아닌 루트 구성 요소 인스턴스라는 점에 유의하십시오.
https://vuejs.org/guide/essentials/application.html#the-root-component
'프로그래밍 > Js' 카테고리의 다른 글
vue3 에 tradingview 차트 연동 (소스추가) (0) | 2023.01.19 |
---|---|
vue3 Composition API 에서 JS plugin 추가 하기 (0) | 2023.01.17 |
websocket 바이너리 전송 arraybuffer (0) | 2022.05.06 |
Shared Workers 이용하여 WebSocket 연결 방법 (웹소켓을 연결한 상태에서 새로고침 또는 다른 페이지로 이동시 웹소켓 연결을 유지하는게 목적) (0) | 2021.12.17 |
웹워커 안에서 웹소켓 구동 시험 테스트 + Node 소켓 서버 (0) | 2021.11.09 |