小编Big*_*ubb的帖子

查找有关如何从Javascript库生成.d.ts文件的文档

我最近接触过TypeScript,但我对文档有点挣扎.似乎是相当多的草根方法.案例和观点.

获取JS库的定义.

首先,如果你从NuGet获得js文件那部分nuget包应该是一个d.ts文件.
其次,我无法找到有关如何创建定义文件的任何特定文档.

我想要包含MarkerWithLabel库,它是google.maps api库的扩展.

有没有人有他们愿意分享的.d.ts文件,或者我在哪里可以获得有关如何从JS库创建/生成文件的文档.

编辑:我正在寻找这个d.ts文件的库是MarkerWithLabel.

这是我基于spec doc开始构建的.d.ts文件,但这似乎根本不起作用.

     /// <reference path="google.maps.d.ts"/>


     declare class MarkerWithLabelOptions {
         crossImage: string;
         handCursor: string;
         labelAnchor: google.maps.Point;
         labelClass: string;
         labelContent: any;
         labelInBackground: boolean;
         labelStyle: any;
         labelVisible: boolean;
         optimized: boolean;
         raiseOnDrag: boolean;

     }

     declare class MarkerWithLabel extends google.maps.Marker{
         constructor(opt?: MarkerWithLabelOptions);
     }
Run Code Online (Sandbox Code Playgroud)

实施如下:

 var _mwlo =new MarkerWithLabelOptions({
 position: this.CenterPoint.toLatLng()
    , draggable: true
    , map: this._map
    , labelAnchor: new google.maps.Point(22, 0)
    , labelStyle: {opacity: 1.0}
 });

 var _mwl = new MarkerWithLabel(_mwlo);
Run Code Online (Sandbox Code Playgroud)

我得到一个错误,它说它找不到与提供的参数匹配的方法.

typescript

4
推荐指数
1
解决办法
3467
查看次数

在Google地图上使用MarkerWithLabel会隐藏标记

我目前正在使用带有标签控件的谷歌地图标记.我可以动态地为地图指定一个标记,并为该标记添加标签.

我已经弄明白了如何隐藏标签,但我对如何隐藏图标和显示标签感到有点失落.有人对此提出一些建议吗?

markerWithLabel.setMap(null);
Run Code Online (Sandbox Code Playgroud)

删除标记和标签,而不仅仅是标记.

javascript google-maps google-maps-api-3 google-maps-markers

4
推荐指数
2
解决办法
7147
查看次数

如何确定Google Maps loadGeoJson何时完成?

我有一个用户可以存储他们的映射样式的场景.当用户使用地图导航回该页面时,它应该按照之前的方式显示地图.

用户可以更改地理位置和边框的颜色,也可以根据人口统计信息应用主题样式.

随着新的loadGeoJson的发布,我在加速我的应用程序方面取得了巨大的成功.最初我通过JS自己绘制了所有的地理位置.这导致了大约1500个地理区域的一些内存问题.这项新功能大大降低了它.我选择在服务器端生成Features对象,只是将URL传递给地图进行渲染.此URL与所有其他样式信息一起传递,以重建以前的地图.

我遇到的问题是,当我尝试应用样式时,地图没有检索到要在地图上显示的要素列表.

通过文档查看我没有看到任何专门针对loadGeoJson方法的事件,但确实看到了addfeature和setgeometry,但是在使用loadGeoJson方法时都没有引发这些事件.

这些都是在Typescript中编写的,并试图遵循一个非常严格的MVVM方法,使用Knockout通过绑定来处理所有UI更改.

还有其他事件我可以联系到这个方法何时完成,这样我可以适当地应用我的风格?

还有另一种方法,我可以在某个地方'等待'烘烤吗?.

javascript google-maps-api-3 knockout.js typescript

4
推荐指数
1
解决办法
5985
查看次数

Knockout JS和单选按钮在第一次点击时没有绑定

我正在使用淘汰JS工作的瘦客户端,并且我遇到了单选按钮的一些问题,我希望有人能够提供一些有关可能导致此问题以及我可以采取哪些措施来纠正这种情况的洞察力.

我有一个相当典型的单选按钮阵列布局.

<p data-bind="text: background().description"></p>
<div data-bind="foreach: backgroundOptions" class="bg-options">
    <p data-bind="text: description" class="color-swatch"></p>
    <input type="radio" name="backgroundsGroup" data-bind="checked: $parent.backgroundId, value:id"/>
</div>?
Run Code Online (Sandbox Code Playgroud)

您可以看到我绑定到父对象的backgroundId.

显示的父对象和对象的JS如下所示:

var CardBackground = function(imagePath, swatchPath, id, description) {
    var self = this;

    var _imagePath = imagePath;
    self.imagePath = ko.observable(_imagePath);

    var _id = id;
    self.id = ko.observable(_id);

    var _description = description;
    self.description = ko.observable(_description);

    var _swatch = swatchPath;
    self.swatchPath = ko.observable(_swatch);
};

var Card = function() {
    var self = this;
    getBackgrounds = function() {
        var bgs = [ …
Run Code Online (Sandbox Code Playgroud)

knockout.js

3
推荐指数
1
解决办法
4084
查看次数