0
我正在學習開發谷歌瀏覽器瀏覽器操作的擴展,並JavaScript功能拆分成多個文件。在popup.html文件,腳本資源被定義像拒絕了,因爲它違反了以下內容安全政策指令,以評估劇本:「劇本-src的‘自我’」
<script src="js/Identity.js"></script>
<script src="js/View.js"></script>
View.js需要調用成從Identity.js曝光的物體的方法,以及通過在該過程完成時被通知的回調函數。但是,Chrome似乎會破壞執行。
拒絕,因爲它違反了以下內容 安全政策指令,以評估劇本:「劇本-src的‘自我’」
從我個人理解,谷歌指出,政策是爲了防止任意字符串被評估爲可執行的邏輯塊。但是,我正在傳遞實際功能在我的對象之間,所以我不太確定這裏必須糾正什麼?
IdentityObj.Process = function (params, callback) {
doSomeWork();
setTimeout(callback(true), 1000); // break here
};
從視圖對象,一個例子是
View.loginClick = function(event) {
event.preventDefault();
this.loggingInState();
var emailAddr = $('#emailAddr').val();
var password = $('#password').val();
IdentityObj.login(emailAddr, password, this.loginCallback.bind(this));
};
View.loginCallback = function(success) {
if (success) { this.usageState(); }
else { this.errorState(); }
};
'callback'不返回的功能。如果情況並非如此,請展示您的真實代碼。 –
我不明白你的意思。回調是來自調用者對象的函數,該方法在完成該工作後將調用該函數。 – icelava
顯示'callback'的定義。 –