Récemment, j'utilise le moteur de communication en temps réel Wild Dog Cloud pour créer une application de tâches.
En gros, il y a une fonction à l'avant qui surveille les changements dans les données cloud et synchronise les données cloud avec le local. Ainsi, chaque fois que vous actualisez le navigateur, les données de la page s'afficheront normalement.
Il y a une fonction à l'arrière qui implémente la fonction de suppression de notes. La logique entre les deux fonctions est indépendante l'une de l'autre. Cette dernière fonction n'affectera pas la précédente.
Mais une fois, il y a eu une erreur dans une déclaration dans la fonction de suppression des notes autocollantes, et les notes autocollantes n'ont pas pu être affichées normalement après avoir actualisé la page.
N'est-il pas dit que js est exécuté un par un ? Pourquoi cela se produit-il dans mon programme ?
var task_list = new Array();
var i =0;
//野狗云初始化
var config = {
syncURL: "https://mytodo123.wilddogio.com" //输入节点 URL
};
wilddog.initializeApp(config);
var ref = wilddog.sync().ref();
//绑定键盘回车键
$(document).keydown(function(event){
if(event.which == 13)
{
$("#btn1").click();
}
});
/*点击submit时,将数据先添加到野狗云*/
$("#btn1").click(function(){
var content=$("#ipt1").val();
if(content != ""){
ref.child("note").push(content);
$("#ipt1").val("");
}
});
/*监听云端数据变化*/
ref.child("note").on("child_added",function(snapshot){
var list = $('#task-list');
content = snapshot.val();
var textObj = '<p class="task-item">\
<input type="checkbox" />\
<span class="ui-icon ui-icon-clock"></span>\
<span class="task-content">'+content+'</span>\
<span class="task-detail">detail</span>\
</p>';
list.prepend(textObj);
});
//删除便签
$("#btn2").click(function(){
$("input[type='checkbox']:checked").each(function(){
var delObj = $(this).parents("p.task-item")
delObj.remove();
});
});
Pour faire simple, avant que JS ne soit exécuté, l'intégralité du bloc de code (fichier js ou balise de script) doit d'abord être analysée (analysée). Ce que vous
Uncaught SyntaxError: Unexpected token
voulez dire, c'est que vous ne pouvez même pas passer l'étape de syntaxe, et l'intégralité du bloc de code. ne peut pas être exécuté.Vous pouvez lire cet article et modifier
不是说js是一条一条执行的吗
cette vue.Vous pouvez interrompre pour voir l'ordre d'exécution