如何制作用户喜欢的H5

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何制作用户喜欢的H5相关的知识,希望对你有一定的参考价值。

制作用户喜欢的H5,当然是要用专业一些H5工具。最重要的是要有创意,有想法,能够与用户进行深度交互,不仅尽是这种手势的点击、滑动,更重要的是能让用户有个性化的体验,比如上传自己的照片,DIY或者是生成海报发送到朋友圈,或者给好友。
还有像解密小游戏、答题小游戏啊,然后让用户有很强烈的参与感、好奇心。比如性格测试,给用户一个比较满意的性格测试结果,夸赞用户。
那么问题来了,哪些工具能够做这种呢?当然是专业H5工具,我自己用意派Epub360,上面说的这些都可以做,所以我觉得非常好,可以尝试一下。
参考技术A 建议可以先去了解用户的需求。如果用户要推广产品的话那就去了解产品的特性。简单一点的话可以借助第三方平台进行排版,比如易企秀、MAKA都是简单容易上手的。但是排出来的可能就比较中规中矩一些。如果想要达到比较好的效果,就需要美术和程序啦。在这之前可以多看一些案例,XUANZHEN h5case就有比较多的关于h5的案例,很值得借鉴~望采纳 参考技术B

H5作为一种新型展示工具,它的有点在于易制作、易传播、画面效果好。

要制作用户喜欢的H5,首先要了解用户的需求,选对主题;

再者就是画面要精美,动画效果好看炫酷,配上合适的音乐,这需要花费一定心思了

当然了,现在的H5平台都有专用的模板,直接拿来使用就好,不必费太多心思。

常见的平台有米鼠、易企秀、MAKA这些。

易企秀的模板比较多,但好看点的都是要收费,而且价格还不便宜;

MAKA的模板虽然很多都是免费的,但很多功能都需要购买会员才能使用,比如高级交互、查看数据等,使用起来非常不方便;

和易企秀、MAJA相对比,米鼠h5要良心的多,不仅模板全部是免费的,而且全部高级功能都是开放使用的,数据查看、ppt导入、自定义动画等

如何确定帖子是不是被 Mongoose 的用户点赞

【中文标题】如何确定帖子是不是被 Mongoose 的用户点赞【英文标题】:How do I decide whether a post is liked by a user with Mongoose如何确定帖子是否被 Mongoose 的用户点赞 【发布时间】:2017-12-15 22:15:14 【问题描述】:

我正在尝试制作一个功能,以便用户可以喜欢帖子(用户喜欢的帖子或用户不喜欢的帖子,即没有不喜欢或投票)。

我的帖子是带有架构的 MongoDB 集合中的对象


  title: String,
  text: String

虽然我的用户有架构


  username: String,
  password: String

例如,我可以在帖子中创建一个数组,其中包含喜欢特定帖子的用户的 ID。它看起来像


  title: String,
  text: String,
  likedByUsers: [ObjectID]

或者我可以在用户中创建一个数组,其中包含用户喜欢的帖子的 ID,类似于


  username: String,
  password: String,
  postsLiked: [ObjectID]

但是,我希望用户会喜欢成千上万的帖子,所以我可能会面临 MongoDB 中对象大小的限制。

所以我想我应该改为创建一个带有赞的新集合


  userId: ObjectID,
  postId: ObjectID

但是,我正在考虑如何在我的应用中检索它。

我是否应该存储用户(已登录)喜欢的所有帖子的 ID 数组,并且当我打印每个帖子时,我会查看该帖子是否在用户喜欢的帖子中,然后显示“已喜欢”按钮?

或者,当我请求查看所有帖子时,我可以发送用户 ID,然后为每个帖子添加一个字段“isLiked”,表示是否可以找到 Liked 集合中的对象,匹配两个帖子和用户ID?

【问题讨论】:

如果您真的阅读了"How to Model a “likes” voting system with MongoDB",那么您会在内容中发现对于“当前用户”和 UI 视角,您只需要知道“该用户”是否喜欢该帖子。这基本上是阵列上的$elemMatch 投影。 Post.findById(id, "likedByUsers": "$elemMatch": "$eq": userId ) 因为从该用户的角度来看,所有其他用户都无关紧要。在“用户”本身上也包含帖子也是多余的。 【参考方案1】:

MongoDB 中文档的大小限制是 16mb,非常大。除非您尝试创建下一个 Facebook,否则将 ID 放入数组中不会有问题。我在单个文档数组中有 10k+ 个 ID 的生产工作流程,没有问题。问题不应该是关于文档大小,您必须根据您需要的查询来选择放置它的位置。

我会为 Post 创建一个架构并将 Liked id 放在那里,例如:


    title:  type: String ,
    text:  type: String ,
    likes: [ type: ObjectId, ref: 'users' ]

帖子会变老,人们会不再喜欢它,因此如果放入 Post 而不是 User 集合,则数组的平均大小应该更小。此外,放置ref 属性使您能够使用Mongoose Populate API,因此您可以查询以下帖子:

Posts.find().populate('likes');

这将为您提供数组中的完整用户信息。搜索单个用户喜欢的帖子也很简单:

Posts.find(likes: userId).populate('likes');

希望对你有帮助。

【讨论】:

所以当用户看到帖子时,我需要if (post.likes.includes(userId)) // already liked ?对每个带有可能有数千个 ID 的 like 数组的帖子执行此操作不是很繁重吗? 在请求中发送用户ID不是更好吗,这样我可以让数据库搜索likes数组,只返回一个布尔字段,说明用户是否喜欢该帖子? 当您处理数千个 ID 时,计算任何东西总是很痛苦。处理它的最佳方法是尽可能缓存所有内容。 @Jamgreen - 嗨。我正在尝试完成类似的事情。您是如何在 UI 中检查用户是否喜欢该帖子的?这种方法感觉不像您分享的那样正确。 if (post.likes.includes(userId) 用户应该有likedPost[]。想象一下 1000 个用户和 10,000 个帖子。用户的点赞数通常比一篇好帖子的点赞数要少得多(这使得搜索成本更低)。至于帖子,如果只显示总赞就足够了,您可以在每个赞上加上totalLikes:Number$inc。但是,如果用户数量很大,搜索所有用户的喜欢数组效率不高。在这种情况下,您也可以在帖子中添加User[]

以上是关于如何制作用户喜欢的H5的主要内容,如果未能解决你的问题,请参考以下文章

微信h5怎么制作,步骤都有哪些?

怎么_如何制作h5页面?

电商H5制作常使用的排版方式

微信H5页面制作流程?

怎么制作手机网页 如何制作一个手机html页面

微信H5页面里面可以做一个按钮直接分享到朋友圈吗