【问题标题】:expected ',' javascript firebase [closed]预期的',' javascript firebase [关闭]
【发布时间】:2018-08-16 01:19:00
【问题描述】:

我在 javascript 代码中遇到了这个问题

预期 ',' 在行 like: like + 1;

dislike: dislike + 1; 行中预期为“,”

html代码

<div class="container">
    <div class="button-container like-container">
        <a href="#">
            <i class="fa fa-heart-o"> Like</i>
        </a>
    </div>
    <div class="button-container dislike-container">
        <a href="#">
            <i class="fa fa-heart"> Dislike</i>
        </a>
    </div>
</div>

javascript代码

var likeDislike = new Firebase("https://like-unlike.firebaseio.com/");

var like;
var dislike;

likeDislike.on("value", function(likeDislikeData) {
    var data = likeDislikeData.val();
    like = data.like;
    dislike = data.dislike;
});

$('.like-container').on('click', function() {
    likeDislike.update({
        like: like + 1;
    });
    console.log("Number of likes:" + like);
});

$('.dislike-container a').on('click', function() {
    likeDislike.update({
        dislike: dislike + 1;
    });
    console.log("Number of dislikes: " + dislike);
});

【问题讨论】:

  • update 函数采用object,如{property: value, property2: value2}。但是,你的里面有一个分号。如果你的对象只有一个键/值对,它看起来就像{property: value},没有分号。假设您已经得到答案,我将投票以 Off-topic: simple typographical error 结束。

标签: javascript jquery firebase firebase-realtime-database


【解决方案1】:

你不能在一个对象中拥有;,你必须用逗号分隔对象属性,

【讨论】:

    【解决方案2】:

    问题是您在 json 中使用 ; 而您不能。

    likeDislike.update({
        dislike: dislike + 1; //Error
    });
    

    将此行替换为:

    likeDislike.update({
        dislike : dislike + 1
    });
    

    【讨论】:

      【解决方案3】:

      当你定义一个对象时,你应该用逗号分隔属性,而不是;。即,dislike: dislike + 1; 应该是 dislike: dislike + 1,

      请参阅MDN Docs

      在 javascript 中,; 表示语句结束。

      【讨论】:

        猜你喜欢
        • 2016-06-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-02-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多