[vue は外部 JS を参照し、JS ファイル内のメソッドを呼び出します]

JS ファイルを VUE プロジェクトに導入するいくつかの方法

Vue プロジェクトを開発する場合、一部の js ライブラリをエクスポートせずに非 ES6 形式で使用する必要がある場合があります。これは次の方法で実現できます。

1. scriptタグを使用してindex.htmlページに導入します

もちろんCDNのアドレスも使えます。このようにして導入されたコンテンツはグローバルであり、どこでも使用できます。

<!DOCTYPE html>
<html lang=zh-CN>
	<head>
		<meta charset=utf-8>
		<meta http-equiv=X-UA-Compatible content="IE=edge">
		<meta name=viewport
			content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no,viewport-fit=cover">
		<title>网签合同查询</title>
		<link rel=stylesheet href=./static/index.b0707a6a.css>
		**被引入的JS**
		<script src=https://isdapp.shandong.gov.cn/jmopen/jssdk/index.js charset=utf-8></script>
	</head>
	<body>
		<div id=app></div>
		<script src=./static/js/chunk-vendors.9051d855.js></script>
		<script src=./static/js/index.d88e62c6.js></script>
	</body>
</html>

2. main.js で window.moduleName を使用して使用します

Vue.prototype に組み込んでコンポーネントで使用することもできます。

var THREE = window.THREEvar GLTFLoader = THREE.GLTFLoader

Vue.prototype.THREE = THREE

3. エクスポートを手動で追加する

js ライブラリで使用する必要があるメソッドに、エクスポートされるデフォルトの {/method /} を指定し、import {*} from で使用します。

JS ライブラリ内:

function realconsole(){  

    alert("hello world!");  }  

 export {  

     realconsole }

JS ライブラリを使用する必要があるコンポーネント内:

import realconsole from './xxx'

4. import メソッドを使用して、必要な js ライブラリのメソッドをグローバルにマウントします。

import '@static/libs/GLTFLoader'

// 可以从全局获取导入的方法 

let GLTFLoader = THREE.GLTFLoader

すぐに使える: 呼び出される JS ファイルのメソッドで vue ページのメソッドを呼び出す必要がある場合は、次のように実行できます。

jsでvueのメソッドを呼び出す

vueページでwindowオブジェクトにメソッドを登録し、jsページでwindow.xxxを直接呼び出します。

demo.vue

mounted() {
    window.functionForJs = this.functionForJs 
},
methods: {
    functionForJs(data) {
        console.log('接收参数', data)
    }
}

デモ.js

export function doSomething() {
    window.functionForJs('哈哈哈')
}

おすすめ

転載: blog.csdn.net/qq_39236283/article/details/128254191