我一直在尝试google.maps.Map在由Angular Google Maps库中的ui-gmap-google-map指令创建的对象上设置click事件侦听器.
我需要动态地执行此操作,所以看起来(至少通过我的简短测试)使用指令events上的ui-gmap-google-map参数将不起作用(因为它似乎只"读取"参数值一次,但也许我错了那).
所以我决定使用control参数,它用方法getGMap和扩充参数值命名的对象refresh.这是我的指令用法:
<ui-gmap-google-map center="appCtrl.mapSetup.center"
zoom="appCtrl.mapSetup.zoom"
control="appCtrl.mapSetup">
</ui-gmap-google-map>
Run Code Online (Sandbox Code Playgroud)
最后,我正在异步加载Google Maps API,并依赖GoogleMapApi服务/承诺(Angular Google Maps的一部分)来了解何时可以安全地开始处理google.maps.Map对象(例如添加事件监听器等).以下是一个小例子:
// inside the AppController constructor, see the fiddle linked below
var mapSetup = this.mapSetup;
GoogleMapApi.then(function () {
google.maps.event.addListener(mapSetup.getGMap(), 'click', function () {
alert('hello');
});
Run Code Online (Sandbox Code Playgroud)
所以当页面被加载时(这里是小提琴),我得到"TypeError:undefined不是一个函数",因为该mapSetup对象没有用getGMap或增加refresh.根据我对文档的理解,它似乎应该是.
我addListener使用$timeout(Angular服务)使用几百毫秒的延迟来包装调用,然后它起作用,因为此时mapSetup对象已被增强getGMap.
有没有办法避免必须使用$timeout任意延迟等待直到指定的 …
我有一个使用node.js的电子应用程序.我想使用Winston登录应用程序.我已经将winston添加到我的package.json文件中,但是当我运行webpack的build命令时,我从winston中的colors.js依赖项中得到了一些警告.
'...the request of a dependency is an expression...'
Run Code Online (Sandbox Code Playgroud)
然后它引用了winston和colors.js.忽略警告不起作用,因为电子应用程序尝试从winston加载一些文件时出现异常.
我做了一些挖SO和GitHub的网站,他们说,colors.js具有一定的动态要求语句的WebPack是具有问题.我还看到其他示例项目似乎已经启动并运行,而项目中没有任何问题.有谁知道如何在电子应用中正确包含带有webpack的winston日志包?