【问题标题】:How to send data from Meteor app to an embedded widget?如何将数据从 Meteor 应用程序发送到嵌入式小部件?
【发布时间】:2020-06-05 08:46:06
【问题描述】:

我正在尝试构建一个 Meteor 应用程序,它可以让用户在他们的网站上嵌入一个小部件,但我在小部件部分遇到了问题。

用户可以在他们的网站上嵌入以下代码:

<div id="example-widget" data-widgetid="SOME WIDGET ID"></div>
<script src="http://localhost:3000/lib/connect.js" async></script>

在 connect.js 文件中,我使用 Meteor 方法从服务器/数据库获取所需的小部件数据,但不知道如何将该数据挂载到用户网站上的 div 元素...

这是我的 configure.js 文件:

if (Meteor.isClient) {
    const data = A METEOR METHOD WHICH GETS WIDGET DATA FROM DATABASE;
    const element = document.getElementById('example-widget');
    // I'd like to somehow mount the 'data' to the 'element'
}

元素变量返回 null - 我假设因为“文档”指的是我自己的应用程序,而不是插入 div 的用户网站...

如果这是非常明显的事情,我不会感到惊讶,但我似乎无法理解......

TIA

【问题讨论】:

  • 你使用哪个前端? Blaze、React、Angular、Vue、Svelte 等?
  • @Jankapunkt - 我现在正在使用 Blaze

标签: javascript node.js meteor widget


【解决方案1】:

这是我的做法。

在 server.js 中,

通过 nimble:restivus 公开 API 端点,然后通过客户端小部件中的 fetch 使用 API。

Api.addRoute('code/', {
  authRequired: false
}, {
  get() {
    return Orders.findOne({});
  }
});

【讨论】:

    【解决方案2】:

    如果有人有兴趣 - 在玩过该应用程序之后,我所要做的就是将 .js 文件移动到“公共”文件夹并删除“if (Meteor.isClient)”位。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-09
      • 2013-08-30
      • 2015-06-10
      • 2013-01-02
      • 2015-06-04
      • 1970-01-01
      • 1970-01-01
      • 2020-10-16
      相关资源
      最近更新 更多