我已经安装webshot包和流星webshot智能包来自: https://github.com/TimHeckel/meteor-webshot
在目录pacages / webshot / LIB / webshot.js有WEBSHOT对象的定义。 在默认的流星应用程序,我想用这个对象来获取快照显示在从上面的链接第二步:
Template.hello.events({
'click input' : function () {
var _image = "myscreenshot.png";
var _res = WEBSHOT.snap("http://google.com", "public/exports~/" + _image, {
screenSize: {
width: 300
, height: 300
}
});
}
});
当我按一下按钮我有一个例外:未捕获的ReferenceError:WEBSHOT没有定义。
命令:
流星名单
显示webshot包,我在哪里需要包括这个包得到这个工作?
该WEBSHOT
对象仅适用于服务器端。 见在package.js这一行 。
要使用它,你需要在服务器上创建一个方法Meteor.methods
,使用WEBSHOT
里面,然后调用从事件处理程序此方法。
休伯特OG是正确的,这个包是唯一的服务器端。
然而,它并没有被5个月更新一次,所以它看起来像它不是最新与流星的最新的“链接”,这是一个特点,出现在0.6.5如果我记得很清楚。
你需要的git克隆包在本地包目录。 (您可能需要“流星删除”以前的包装和“流星添加”新一)。 然后修改package.js,使它看起来像这样:
Package.on_use(function (api) {
api.add_files("lib/webshot.js", "server");
api.export("WEBSHOT","server");
});
从流星0.6.5,你需要明确指定由包符号远销全局命名空间,因为包代码是封闭内执行。
我有同样的问题,所以我使用最新版本的节点webshot的添加了一个新流星包装: https://atmospherejs.com/bryanmorgan/webshot 。
你应该能够得到它的工作使用:
meteor add bryanmorgan:webshot
然后,相同的API节点webshot:
webshot("http://google.com", "/tmp/google.png", function (err) {
// screenshot saved to /tmp/google.png
});