Meteor+ Blaze : If else 阻止空格键模板第二次不执行

Meteor+ Blaze : If else block in spacebars template not executing for the second time

objective是点击事件动态显示按钮。单击编辑按钮时,将显示保存和取消按钮。单击取消按钮时,编辑按钮应该显示回来,但它不起作用。我在助手中使用会话。

template.html

<head>
    <title>ifelse</title>
</head>

<body>
    <h1>Welcome to Meteor!</h1>

    {{> hello}}
</body>

<template name="hello">
    {{isEdit}}

    {{#if isEdit}}
        <div class="saveCancelBtnBarLogic">
            <button class="button">Save</button>
            <button class="cancelEditLogic button">Cancel</button>
        </div>
        {{else}}
        <button class="editDishButtonLogic button">Edit</button>
    {{/if}}
</template>

template.js

if (Meteor.isClient) {

    Template.hello.events({
        "click .editDishButtonLogic": function(event, template) {
            console.log("edit true");

            Session.set("isEditSession", "true");
        }

    });

    Template.hello.events({
        "click .cancelEditLogic": function(event, template) {
            console.log("edit false");
            Session.set("isEditSession", "false");
        }
    });

    Template.hello.helpers({
        isEdit: function() {
            console.log("edit helper : " + Session.get("isEditSession"));
            return Session.get("isEditSession");
        }
    });
}

项目也部署在@http://ifelse.meteor.com,供参考

已解决:

更改了以下行: Session.set("isEditSession", "false");

这样:

Session.set("isEditSession", false);

false 在这里是一个布尔值——注意 false 不再用引号引起来。感谢 benjick 在这里回答 @https://forums.meteor.com/t/if-else-block-in-spacebars-template-not-executing-for-the-second-time/8388/2