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
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