草庐IT

学习typeScript(weakMap,weakSet,set,map)

全部标签

javascript - D3 map SVG 性能

过去几天我一直在努力优化D3map上的性能,尤其是在移动设备上。我正在使用SVG变换进行缩放和平移,但进行了以下观察:矫枉过正来自用于伪造国家之间间距的路径笔划。我上传了一对示例map以供比较:http://www.nicksotiriadis.gr/d3/d3-map-1.htmlhttp://www.nicksotiriadis.gr/d3/d3-map-2.html两张map之间的唯一区别是沿乡村道路的笔划路径,性能差异在桌面设备上什至很明显-但在移动设备上更明显。删除路径笔划使移动性能变得轻而易举..我尝试了各种svg笔画形状渲染选项,但没有取得显着效果。现在进入问题。有什么方

javascript - typescript :如何从javascript文件导入类?

我愿意:导入定义类的js文件:./myClass/index.js在某处声明MyClass的公共(public)方法(在index.ts或指定的声明文件中,我真的不知道该怎么做)有一个公开类的typescript文件:index.ts有点像//index.tsimportMyClassfrom'./myClass'//orrequire,oranythingthatwouldworkexport{MyClass}和//myClass/index.jsexportdefaultclassMyClass{...}这显然是行不通的,因为./myClass/index的导入将找不到模块。问题是

javascript - IHttpPromise 使用 TypeScript 2.5 错误地扩展了 IPromise

我开始使用Typescript2.5,现在我在Angulartypescript定义文件中收到以下代码消息:interfaceIHttpPromiseextendsIPromise{success(callback:IHttpPromiseCallback):IHttpPromise;error(callback:IHttpPromiseCallback):IHttpPromise;then(successCallback:(response:IHttpPromiseCallbackArg)=>IPromise,errorCallback?:(response:IHttpPromise

javascript - react : Cannot set property 'lastEffect' of null

我在生产中遇到错误。看起来它与uglisifyWebpack插件有关我找不到解决方案来解决它。网络包配置:constUglifyJSPlugin=require("uglifyjs-webpack-plugin");module.exports={mode:"production",entry:"./index.tsx",resolve:{extensions:[".js",".tsx"]},module:{rules:[{test:/\.tsx?$/,use:{loader:"ts-loader",options:{transpileOnly:true}}}]},optimizati

javascript - 如何获取我网站上嵌入的 Google map 的 URL?

我正在使用GoogleMapAPI在网站上显示map。我想在同一页面上添加一个链接,将他们直接带到Googlemap上的map。是否可以对map进行API调用以检索当前位置/缩放级别或起始位置/缩放级别的URL? 最佳答案 这是用于将Googlemap居中到一个点的链接:http://maps.google.com/?ll=LATITUDE,LONGITUDE&z=ZOOM您需要做的就是将上面的LATITUDE、LONGITUDE和ZOOM替换为所需的坐标。获取鼠标点击位置的经纬度,可以使用如下API代码:varmap=newGMa

javascript - 我怎样才能防止传单拖动 map 以适应标记弹出窗口?

目前我们正在使用gmaps进行传单项目,我遇到了一个小问题。添加多个标记(每个标记都有一个弹出窗口)后,我们想将它们全部打开。为此,我使用了以下代码和平:L.Map=L.Map.extend({openPopup:function(popup){//this.closePopup();this._popup=popup;returnthis.addLayer(popup).fire('popupopen',{popup:this._popup});}});在页面加载时,一切都按预期工作。但是失败的场景来了:页面加载后,用户放大,一些标记超出了用户的“View区域”。几秒钟后,网站加载新

javascript - 我如何使用 gulp 在不同的文件中而不是在 javascript 文件中创建 Typescript sourcemaps?

我有一个使用gulp的项目。我想将typescript文件转换为javascript并拥有源map。这是我现在拥有的:varsourcemaps=require('gulp-sourcemaps');vartypescript=require('gulp-typescript');gulp.task('typescript',function(){gulp.src('app/**/*.ts').pipe(typescript()).pipe(sourcemaps.init()).pipe(sourcemaps.write()).pipe(gulp.dest('app'))});这部分有

typescript - `share()` 和 `publish().refCount()` 之间的区别

observable.publish().refCount()和observable.share()之间的实际区别是什么。我们不想使用share的场景示例是什么? 最佳答案 没有实际区别,如果您查看“observable.prototype.share”,您会发现它只是返回“source.publish().refCount()”。至于为什么要使用它,更多的问题是您需要对源开始广播时进行多少控制。由于refCount()将在第一次订阅时附加底层可观察对象,因此后续观察者很可能会错过在他们订阅之前传入的消息。例如:varsource=

javascript - typescript 重载类方法 - 相同的返回类型,不同的参数

我有一个typescript类:classContactModel{publicgetUsage(type:string):restangular.IElement{returnthis.getBase().one('usages',type);}publicgetUsage(customerId:number,type:string):restangular.IElement{returnthis.ModelFactory.createRequestMapper(ContactModel.options).one('customers',customerId).all('contac

javascript - 将 Angular 1.x 与 TypeScript 1.5 和 SystemJS 结合使用

我正在尝试将Angular1.x与TypeScript1.5.3和SystemJS结合使用。index.html页面设置为System.import('bootstrapper'),它应该启动。bootstrapper.ts被编译为bootstrapper.js并且只要它不使用Angular就可以正常工作(即只做一个console.log()正常工作)现在,我想导入并使用angular来引导它。我已经完成了jspminstallangular并且我还使用tsd安装了一些angular类型。在bootstrap.ts文件的顶部引用了类型。不幸的是,importangularfrom'an