gpt4 book ai didi

javascript - 如果所有者是meteor js,则显示模板中的元素

转载 作者:行者123 更新时间:2023-11-28 15:29:47 26 4
gpt4 key购买 nike

我正在编写一个消息应用程序,它为用户提供针对提交的给定消息的删除/编辑功能。我想做的是写一些类似的东西:

{{#if currentUser._id === this._id}}
<!-- Show -->
{{/if}}

但这可能是错误的我有一个为消息记录编写的模板:

<template name="message">
<div class="row message-row">
<div class="col-md-12">
<div class="message-container">
<div class="message-avatar">
<img src="{{userAvatar}}">
</div>
<p>{{message}}</p>
<div class="message-time">{{prettifyDate time}}</div>
<!-- this is the div to hide / show based on the conditional -->
<div class="message-controls">
<button class="btn btn-link btn-xs" type="button" id="deleteMessage"><i class="fa fa-trash-o"></i></button>
<button class="btn btn-link btn-xs" type="button" id="editMessage"><i class="fa fa-edit"></i></button>
</div>
<!-- end -->
</div>
</div>
</div>
</template>

我在 client.js 中使用以下内容

  Template.messages.messages = function() {
return Messages.find({}, { sort: {time: -1} });
}

但此时我陷入困境

最佳答案

假设您的消息文档有一个 userId 字段,您可以简单地执行以下操作:

Template.message.helpers({
isOwner: function() {
return this.userId === Meteor.userId();
}
});

和:

{{#if isOwner}}
<!-- controls -->
{{/if}}

您还可以为此创建一个更灵活、可重用的全局助手:

Template.registerHelper('isCurrentUser', function(userId) {
return userId === Meteor.userId();
});
<!-- in this example, the document might have an `ownerId` field rather than `userId` -->
{{#if isCurrentUser ownerId}}{{/if}}

当然,您还需要使用 allow/deny API 验证服务器上的更新。或使用自定义方法。

关于javascript - 如果所有者是meteor js,则显示模板中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27800257/

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