Javascript 如何在HTML中显示此代码?
我正试图做一个标记,表明目前有多少用户同时在我的网站上使用我的Meteor应用程序的Javascript,我不知道这是否有区别。我有以下代码用于跟踪一次站点上有多少用户:Javascript 如何在HTML中显示此代码?,javascript,html,count,meteor,Javascript,Html,Count,Meteor,我正试图做一个标记,表明目前有多少用户同时在我的网站上使用我的Meteor应用程序的Javascript,我不知道这是否有区别。我有以下代码用于跟踪一次站点上有多少用户: Presences.find({online: true}).count(); 但是我如何用HTML在我的网站上显示它呢?我认为流星的组织方式会让事情变得更加困难 哦,我还应该提到,我在这个项目中安装了iron路由器包,所以模板有点不同。这可能会影响代码?简单但不是有效的解决方案: PresenceTemplate.js:
Presences.find({online: true}).count();
但是我如何用HTML在我的网站上显示它呢?我认为流星的组织方式会让事情变得更加困难
哦,我还应该提到,我在这个项目中安装了iron路由器包,所以模板有点不同。这可能会影响代码?简单但不是有效的解决方案:
PresenceTemplate.js:
Template.PresenceTemplate.helpers({
userCounts:function(){
return Presences.find({online: true}).count();
}
})
PresenceTemplate.html:
<template name="PresenceTemplate">
{{userCounts}}
</template>
简单但不高效的解决方案:
PresenceTemplate.js:
Template.PresenceTemplate.helpers({
userCounts:function(){
return Presences.find({online: true}).count();
}
})
PresenceTemplate.html:
<template name="PresenceTemplate">
{{userCounts}}
</template>
这有点棘手,您需要自定义发布函数和客户端userCount上的虚拟集合 这只会发布联机用户数的计数,并在使用Observer查询进行更改时对其进行更改 这样,您就不必发布在线用户的所有文档:因此,当您有更多用户时,您的客户机也不会慢很多 服务器端代码
var userCount = new Meteor.Collection("userCount");
Meteor.subscribe("userCount");
客户端代码
var userCount = new Meteor.Collection("userCount");
Meteor.subscribe("userCount");
HTML示例
<template name="example">
{{userCount}}
</template>
这有点棘手,您需要自定义发布函数和客户端userCount上的虚拟集合 这只会发布联机用户数的计数,并在使用Observer查询进行更改时对其进行更改 这样,您就不必发布在线用户的所有文档:因此,当您有更多用户时,您的客户机也不会慢很多 服务器端代码
var userCount = new Meteor.Collection("userCount");
Meteor.subscribe("userCount");
客户端代码
var userCount = new Meteor.Collection("userCount");
Meteor.subscribe("userCount");
HTML示例
<template name="example">
{{userCount}}
</template>
它可以正常工作,但无论有多少用户登录,计数都保持在0。你知道这是为什么吗?看起来这个方法比下面使用template helper的方法更有效,因为在这段代码中,服务器不是一直在线统计用户,而是从总数中加或减,对吗?@5AMWE5T我很快更正了代码,只是在| |附近的一个小错误。@fabio在两个方面更有效。只有数字会被发送到客户端,因此如果有50个用户,则不必发送50个文档;其次,当用户的其他数据发生更改时,它不必发送关于这50个文档中每个文档的信息发生了更改的信息。所以开销是远远的less@Akshat谢谢如果有人在理解阿克沙的答案方面有问题,那么看看它是否有效,但无论有多少用户登录,计数都保持在0。你知道这是为什么吗?看起来这个方法比下面使用template helper的方法更有效,因为在这段代码中,服务器不是一直在线统计用户,而是从总数中加或减,对吗?@5AMWE5T我很快更正了代码,只是在| |附近的一个小错误。@fabio在两个方面更有效。只有数字会被发送到客户端,因此如果有50个用户,则不必发送50个文档;其次,当用户的其他数据发生更改时,它不必发送关于这50个文档中每个文档的信息发生了更改的信息。所以开销是远远的less@Akshat谢谢如果有人在理解阿克沙的答案方面有问题,那么看看