小编Dav*_*ang的帖子

如何使用webstorm 10重命名一批文件

我想将项目从javascript改为打字稿.因此,我想以递归方式将所有文件的扩展名从*.js更改为*.ts.我如何通过webstorm实现它?

webstorm

9
推荐指数
2
解决办法
1945
查看次数

lodash:仅导入链不起作用

以下代码有效:

let _ = require('lodash');
let arr= _([1,2,3,4]);
let b = arr.map((e)=>e^2);
Run Code Online (Sandbox Code Playgroud)

以下不起作用:

let chain = require('lodash/chain');
let arr= chain([1,2,3,4]);
let b = arr.map((e)=>e^2);
Run Code Online (Sandbox Code Playgroud)

它给了我以下错误:

arr.map 未定义。

有没有办法在不导入整个全局对象的情况下使用链?

javascript lodash

9
推荐指数
1
解决办法
2285
查看次数

eclipse的临时目录/位置在哪里?

我试图修复jvisualvm没有检测到本地java应用程序的问题,如 为什么VisualVM Profiler配置文件我的应用程序?

不幸的是我无法找到日食的tmpdir.
eclipse的java.io.tmpdir在哪里?

eclipse jvisualvm temporary-directory

8
推荐指数
1
解决办法
1万
查看次数

为什么我在指令定义上得到错误TS2345?

我尝试将现有的角度应用程序迁移到typescript(版本1.5.3):

这是代码:

  'use strict';
    angular.module('x')
    .directive('tabsPane', TabsPane)

    function TabsPane(itemTabs) {

        return {
            restrict: 'E',
            compile: compileTabs
        };

        function compileTabs(tElement) {
            var template = createTabsTemplate(); //function which i don't include here for brevity
            tElement.append(template);
        }}
Run Code Online (Sandbox Code Playgroud)

当我编译javascript我得到:

错误TS2345:类型的参数'(itemTabs:any)=> {restrict:string; compile:(tElement:any)=> void; }'不能赋值给'any []'类型的参数.类型'(itemTabs:any)=> {restrict:string; compile:(tElement:any)=> void; }".

我试着理解为什么它在这里抱怨我去了angular的typescript定义:

不知何故,打字稿暗示了这个定义

指令(name:string,inlineAnnotatedFunction:any []):IModule;

以下定义更合适:

指令(name:string,directiveFactory:IDirectiveFactory):IModule;

我对打字稿完全不熟悉,所以我认为我做错了,但我找不到任何与谷歌有关的东西.

angularjs typescript typescript1.5

8
推荐指数
2
解决办法
6153
查看次数

在HTMLUnit中禁用CSS的权衡是什么?

我在HTMLUnit 2.12中经历了缓慢,因此在HTMLUnit中解释了禁用CSS :超慢执行?.

我想了解权衡取舍.这是否意味着我不能使用XPath选择器?还有其他权衡吗?

java performance htmlunit

7
推荐指数
1
解决办法
1539
查看次数

为什么数据类型需要byte,char和short

我在JVM规范中读到数据类型byte,short和char在内部被视为int.那么,如果我们没有从它们的小尺寸中获益,为什么要使用这些数据呢?

java jvm

7
推荐指数
1
解决办法
576
查看次数

将documentMode与typescript一起使用

我检查浏览器是否是:

function isBrowserIE() {
  return window.document.documentMode;
}
Run Code Online (Sandbox Code Playgroud)

Typescript引发了一个错误:

错误TS2339:属性'documentMode'在'Document'类型上不存在.

这是因为版本1.5中的typescript编译器所做的更改:

属性documentMode,parentWindow,createEventObject将从Document类型中删除

我该如何摆脱错误?

typescript

7
推荐指数
2
解决办法
3170
查看次数

type提示:如何定义lru_cache的类型?

鉴于以下功能

@lru_cache(maxsize=1)
def get_response_from_api() -> List[ApiObject]:
    url = _get_api_url()
    response = requests.get(url).text
    return json.loads(response, object_hook=_create_api_obj)
Run Code Online (Sandbox Code Playgroud)

跑步的时候

mypy predictor --ignore-missing-imports --strict

我收到错误消息:

错误:无类型装饰器使函数"get_response_from_api"无类型化

我怎样才能解决这个问题 ?

我应该如何注释lru_cache函数?

python mypy

7
推荐指数
1
解决办法
207
查看次数

将生成器函数注释为迭代器的混淆

在 python类型文档中它是这样写的:

或者,将您的生成器注释为具有 Iterable[YieldType] 或 Iterator[YieldType] 的返回类型:

def infinite_stream(start: int) -> Iterator[int]:
    while True:
        yield start
        start += 1
Run Code Online (Sandbox Code Playgroud)

我写了一个打印无限流的非常简单的例子。我有一个生成器函数,它被传递给另一个函数然后被调用。

from typing import Iterator


def infinite_stream(start: int) -> Iterator[int]:
    while True:
        yield start
        start += 1


def print_infinite_stream(inf_iterator: Iterator[int]):
    for x in inf_iterator(5):
        print(x)


print_infinite_stream(infinite_stream)
Run Code Online (Sandbox Code Playgroud)

使用 mypy 我得到两个错误:

  • 错误:迭代器 [int] 不可调用

  • 错误:“print_infinite_stream”的参数 1 具有不兼容的类型“Callable[[int], Iterator[int]]”;预期“迭代器[int]”

我很困惑为什么我根据文档工作并安装了最新的 python (3.6.5) 和 mypy (0.590) 时出现这些错误。这里有什么问题?

python type-hinting mypy

6
推荐指数
1
解决办法
2423
查看次数

GCP 工作负载身份池的位置参数是什么

根据文档

创建身份池的示例是

gcloud iam workload-identity-pools create my-workload-identity-pool --location="global" --display-name="我的工作负载池" --description="我的工作负载池描述" --disabled

全球位置是什么意思?这个论点的目的是什么?它显然不是像 us-central1 这样的位置,而是一个逻辑位置。

哪些值可用?我没有找到任何关于此的好的文档,所以我问。

google-cloud-platform google-cloud-iam workload-identity

6
推荐指数
1
解决办法
1071
查看次数