問題一:vue文件中引入外部js文件的方法
//在vue文件中
<script>
import * as funApi from '../../../publicJavaScript/publicFun.js';//這裏若是有多個方法的話也引用一次就能夠了
//import {test,test2,test3} from '../../../publicJavaScript/publicFun.js';//這樣若是引用的方法比較多的話就會比較麻煩,並且不美觀
export default {
name: '',
props: [''],
data() {},
methods: {
lazyLoad(){
funApi.test();
}
}
}
</script>
//在外部publicFun.js文件中
function test(){
alert(1)
}
export{
test,//將方法暴露在外部,以便被其餘文件引用
}
問題二:首先引入外部js文件,而且能夠在外部js文件調用vue文件內的方法
export default {
data() {
return { title: '哈哈', } }, mounted() { // methods裏面定義的方法, 暴露到window下 window.test= this.test; }, methods: { test() { console.log(‘1’); }, } }
這樣就能夠在外部js文件經過調用test() 來調用 vue 的methods 中的 test()方法了
問題三:在js的外部文件內,能夠使用this指向vue文件內的 vue實例
vue內的methods裏面的方法
update(e) {
let _this = this
funApi.funUpdate(_this)
}
外部js內的方法
function funUpdate(this) {
this.modal2.flag = false //這裏this就是vue文件內的this,能夠直接指向vue實例進行操做
}