我有两个js文件。在第一个示例中,我使用以下代码:
var rightsRef = db.collection("users").doc(uid).collection("rights");
if(createDocumentWithoutId(rightsRef, "readGrades", "false", null, null, null, null) === true) {
window.location.href = "../public/main/main_index.html";
}
else {
}
在第二个js文件中,我使用以下代码:
function createDocumentWithoutId(var databaseRef, var titleValue1, var contentValue1, var titleValue2, var contentValue2, var titleValue3, var contentValue3) {
databaseRef.set({
titleValue1: contentValue1,
titleValue2: contentValue2,
titleValue3: contentValue3,
}).then(function() {
return true;
}).catch(function(error) {
console.error("Error adding document: ", error);
return false;
});
}
通过这种方式,我可以调用第二个js文件的功能,将它们“导入”到HTML文件中:
<script type="text/javascript" src="javascript1.js"></script>
<script type="text/javascript" src="../javascript2_folder/javascript2.js"></script>
但是我收到此错误:
ReferenceError: createDocumentWithoutId is not defined
答案 0 :(得分:0)
您的第一个JS文件在第二个之前已被完全执行。这就是导致您出错的原因-第二个文件中的函数尚未加载。您可以颠倒它们在HTML中定义的顺序,以便在调用函数之前对其进行定义。
答案 1 :(得分:0)
JS文件在加载时执行,在这种情况下,执行包括定义函数。尝试反转文件的加载顺序,或对第一个代码进行某种检查,例如:
//tr[normalize-space(td)="key1" and normalize-space(td[2])="key2"]