gpt4 book ai didi

javascript - 如何让空格键 {{if}} 内的 HTML 通过 session 变量进行响应式更改?

转载 作者:行者123 更新时间:2023-11-27 23:33:26 25 4
gpt4 key购买 nike

在我的 Meteor 项目中,我希望根据 Session 变量显示模板部分;但是,{{#if}} 内的 HTML 不会以 react 方式显示。
如何让 {{#if}}{{/if}} 通过 session 变量进行响应式更改?

HTML:

<head>
<title>testApp</title>
</head>
<body>
{{> testTemplate}}
</body>

<template name="testTemplate">
{{#if isDisplayed}}
<div>It's working!</div>
{{/if}}
<button id="testButton">Toggle Display</button>
</template>

JavaScript:

Session.setDefault("displayVar", false);

Template.testTemplate.helpers({
isDisplayed: Session.get("displayVar")
});

Template.testTemplate.events({
"click #testButton": function () {
if (Session.get("displayVar")) {
Session.set("displayVar", false);
} else {
Session.set("displayVar", true);
};
}
});

最佳答案

分配一个助手作为值:

isDisplayed : Session.get('displayVar')

与执行相同:

isDisplayed: false // or true, or whatever 'displayVar' is when run

要解决这个问题,只需使用一个函数(此处为 ES6 Arrow function,因为 Meteor 使用 Babel):

isDisplayed: () => Session.get('displayVar')

使用函数可确保 Tracker计算已生成。

关于javascript - 如何让空格键 {{if}} 内的 HTML 通过 session 变量进行响应式更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34342653/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com