我有下面的代碼在我user-profile.html
:如何從Fine-Uploader回調引用外部JavaScript函數?
<template>
<!--Fine-Uploader HTML is here
...-->
<script>
var uploader = new qq.FineUploader({
element: document.getElementById("uploader"),
debug: true,
cors: {
expected: true
},
request: {
endpoint: configOptions.baseUrl + '/api/assets',
customHeaders: {
Authorization: "Bearer " + localStorage.getItem("aurelia_id_token")
}
},
multiple: false,
callbacks: {
onComplete: function (id, fileName, responseJSON){
updateProfile(responseJSON.displayUrl);
}
}
});
</script>
</template>
正如你可以看到,我想調用updateProfile
上傳成功完成。我得到了遠遠的onComplete
回調,並且正確地解析了JSON響應對象。問題是updateProfile
函數位於單獨的.js
文件中,名爲user-profile.js
。
我正在Aurelia工作,這是創建MVVM模塊的標準慣例,即將文件命名爲.html
和.js
擴展名。我不知道爲什麼他們沒有在這種情況下共享範圍,但我得到的錯誤:
Caught exception in 'onComplete' callback - updateProfile is not defined
我還試圖簡單地增加一個標準的腳本標籤在索引文件中直接引用.js
文件但它也行不通,反正這似乎是一個壞主意。
任何方向在此將不勝感激。
這是訣竅。作爲一項抽象服務,可以重複使用這個功能。謝謝! – espressoAndCode