[英]Local JS Script, SRC Not Referencing Properly
我有一些简单的JS代码,用于存储有关人员的数据,并将此数据读/写到Firebase(服务器后端)。 我认为代码很好,但是我无法从“ index.html”文件访问它们。 这是我的“ index.html”文件:
<link href="https://cdnjs.cloudflare.com/ajax/libs/vis/4.12.0/vis.min.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/vis/4.12.0/vis.min.js"></script>
<script type="text/javascript" src="https://cdn.firebase.com/js/client/2.3.2/firebase.js"></script>
<script type="text/javascript" src="./js/firebase.js , ./js/person.js">
var bob = new Person("Bob");
var alice = new Person("Alice");
bob.addPersonToEat(alice);
alice.addPersonToEat(bob);
var firebaseUsers = new Firebase("https://web-of-hunger.firebaseio.com/users");
addNewPerson(firebaseUsers, bob);
</script>
这是我的JS文件:
var Person = function(name) {
this.data = {
name : name,
node : {
id : "empty",
label : name
},
edges : [],
wantsToEat : [],
wantsToBeEatenBy : []
};
};
Person.prototype.addPersonToEat = function(person) {
this.data.wantsToEat.push(person);
person.data.wantsToBeEatenBy.push(this);
this.data.edges.push(
{from:this.data.node.id, to:person.data.node.id, arrows:'to'}
);
};
Person.prototype.removePersonToEat = function(person) {
this.data.wantsToEat.pop(person);
person.data.wantsToBeEatenBy.pop(this);
this.data.edges.pop(
{from:this.data.node.id, to:person.data.node.id, arrows:'to'}
);
};
而另一个:
var addNewPerson = function(usersRef, person) {
if(!checkIfUserExists(person.data.node.id, usersRef)) {
var newUser = usersRef.push();
person.data.node.id = newUser.key();
newUser.set(person.data);
}
};
var updatePersonData = function(usersRef, person) {
if(checkIfUserExists(person.data.node.id, usersRef)) {
usersRef.child(person.data.node.id).update(person.data);
}
};
var getPersonData = function(usersRef, person) {
if(checkIfUserExists(person.data.node.id), usersRef) {
usersRef.once("value", function(snapshot) {
console.log(snapshot.val());
return snapshot.val();
}, function(errorObject) {
console.log("read failed");
return null;
});
}
};
var checkIfUserExists = function(userId, usersRef) {
usersRef.child(userId).once("value", function(snapshot){
if(snapshot.val() != null) {
return true;
}
return false;
});
};
我认为问题是我的脚本SRC参考被弄乱了。 我做了很多研究和工作,并且尝试了每种解决方案。 但是,我的事情只是不想工作。 我以前从未发生过这种情况。
资料夹结构:
任何帮助表示赞赏。
您不能同时具有src
属性和脚本文本的<script>
标记。 您必须为每个脚本使用单独的脚本标签。 据我所知,您也不能在src
属性中放置多个URL。 所以这:
<script type="text/javascript" src="./js/firebase.js , ./js/person.js">
var bob = new Person("Bob");
...
</script>
需要细分为:
<script type="text/javascript" src="./js/firebase.js"></script>
<script type="text/javascript" src="./js/person.js"></script>
<script>
var bob = new Person("Bob");
...
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.