How do I fix the following error: "Cannot read property 'init' of undefined"?

How do I fix the following error: "Cannot read property 'init' of undefined"?

我是运行宁流星发布METEOR@1.4.2.3

我最近通过 Atmosphere 安装了一个社交媒体共享包。

meteor add ellisonleao:sharerjs.

有关该软件包的更多信息也可以在以下位置找到: http://www.ellison.rocks/sharer.js/

我的模板事件处理程序如下所示:

Template.detail.events({

"click .sharer": function() {
//add new buttons with share behaviour

$('.postedImagesWell').append(<button class="sharer button" data-sharer="facebook" data-url="https://ellisonleao.github.io/sharer.js/">Share on Facebook</button>);                                             
window.Sharer.init();
    }
});

在代码中找到下面的模板:

<template name="detail">

<div class="postedImagesWell">
<img class = "img-responsive img-rounded postedImages" id = "trial" src="{{this.photo.url}}" alt="thumbnail" >

</template>

当我运行点击Share on Facebooklink。我在浏览器中看到此错误消息:

Uncaught TypeError: Cannot read property 'init' of undefined

任何有关如何解决问题的帮助都将非常有用!

提前致谢

你应该试试这个库的氛围页面上列出的其他回购:https://github.com/okmttdhr/sharer.npm.js

此外,我认为您不需要在分享按钮上附加 jquery。只需将按钮添加到您的模板,然后在点击侦听器上,而不是调用 window.Sharer,您将 event 参数添加到侦听器函数,然后实例化一个新的共享器,如下所示:

import Sharer from 'sharer.npm.js';
// ...

Template.detail.events({

  "click .sharer": function(event) {
     const sharer = new Sharer(event.target);
     sharer.share();
  }
});