Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在路由之间切换时Meteor中的持久复选框状态_Meteor_Checkbox_Flow Router - Fatal编程技术网

在路由之间切换时Meteor中的持久复选框状态

在路由之间切换时Meteor中的持久复选框状态,meteor,checkbox,flow-router,Meteor,Checkbox,Flow Router,问题:在单页应用程序中,当用户从一个页面转到另一个页面时,Meteor是否保持复选框的状态 我正在尝试在Meteor中开发一个“选择要阅读的书籍”应用程序,在该应用程序的主页上,用户可以从多本书中选择添加到他的阅读列表中。所选书籍将显示在“我的阅读列表”页面上。 我已经用Flow Router建立了路由系统 //routes.js FlowRouter.route“/”{ 名称:'书目', 行动:职能{ BlazeLayout.rendermainLayout,{content:bookLis

问题:在单页应用程序中,当用户从一个页面转到另一个页面时,Meteor是否保持复选框的状态

我正在尝试在Meteor中开发一个“选择要阅读的书籍”应用程序,在该应用程序的主页上,用户可以从多本书中选择添加到他的阅读列表中。所选书籍将显示在“我的阅读列表”页面上。 我已经用Flow Router建立了路由系统

//routes.js FlowRouter.route“/”{ 名称:'书目', 行动:职能{ BlazeLayout.rendermainLayout,{content:bookList}; } }; FlowRouter.route'/myReadingList'{ 名称:“myReadingList”, 行动:职能{ BlazeLayout.rendermainLayout,{content:myReadingList}; } }; //bookList.js用于bookList模板的帮助程序 Template.bookList.helpers{ “书籍”:功能{ 归还书籍。查找; } }; Template.bookList.events{ “change.item”:functionevent{ var-temp=false; Session.settep,event.target.checked; if Session.gettemp{ myReadingList.insert{ userid:Meteor.userid, bookName:this.bookName }; }否则{ var bookName=this.bookName; Meteor.call'removebook',bookName;//从列表中删除未选中的//书籍 } }; //第二页的myReadingList.js帮助程序 Template.myReadingList.helpers{ “selectedBooks”:函数{ 返回selectedBooks.find; } }; {{每本书} {{bookName}} {{/每个}} {{每个选定的图书} {{name}}li>
{{/每个}}这是正常行为。您正在切换路由,这意味着当您重新加载模板(即导航回上一个路由)时,DOM正在重建。如果您只需要保存当前会话的状态,则可以使用会话变量来执行此操作。如果您希望能够在多个登录之间和跨mac保存状态hines然后你会想在一个集合中保留该状态。谢谢@Michel。这就消除了我的困惑。或者你可以隐藏你不需要的模板,避免破坏它们以保持状态。但我猜你想做@MichelFloyd建议的事情。对,在一个单页站点中显示/隐藏可能足够好。对!我从没想过显示/隐藏div可以做这个把戏。但是现在我想不能用show/hide div代替路由系统。使用show/hide和routing的利弊是什么?@ElizerSteinbock这是正常的行为。你正在切换路由,这意味着当你重新加载模板时,DOM正在重建,即导航回以前的路由。如果你只需要这样做的话o保存当前会话的状态,然后您可以使用会话变量来执行此操作。如果您希望能够在多个登录和跨计算机之间保存状态,那么您需要将该状态保存在集合中。谢谢@Michel。这消除了我的困惑。或者您可以隐藏不需要的模板,并避免将其删除以保留p状态。但我猜你想做@MichelFloyd建议的事情。对,在一个单页网站上显示/隐藏可能足够好。对!我从来没有想过显示/隐藏div可以做到这一点。但现在我想不能用显示/隐藏div代替路由系统。使用显示/隐藏和路由的利弊是什么?@Elizersteinbock