小编ibe*_*beu的帖子

在类方法中打字"this"

我知道这可能是基本的痛苦,但我很难绕过它.

class Main
{
     constructor()
     {
         requestAnimationFrame(this.update);  //fine    
     }

     update(): void
     {
         requestAnimationFrame(this.update);  //error, because this is window
     }

}
Run Code Online (Sandbox Code Playgroud)

似乎我需要一个代理,所以让我们说使用Jquery

class Main
{
     constructor()
     {
         this.updateProxy = $.proxy(this.update, this);
         requestAnimationFrame(this.updateProxy);  //fine    
     }

     updateProxy: () => void
     update(): void
     {
         requestAnimationFrame(this.updateProxy);  //fine
     }

}
Run Code Online (Sandbox Code Playgroud)

但是来自Actionscript 3的背景,我不确定这里发生了什么.抱歉,我不确定Javascript的开始位置和TypeScript结束.

updateProxy: () => void
Run Code Online (Sandbox Code Playgroud)

而且,我不相信我这样做是对的.我想要的最后一件事是我的班级大部分都有aa()函数需要访问,aProxy()因为我觉得我写两次相同的东西?这是正常的吗?

jquery proxy-classes this typescript

75
推荐指数
5
解决办法
5万
查看次数

mockito给定大小的anyList

我正在用mockito验证一个方法已被调用.方法:

public void createButtons(final List<Button> buttonsConfiguration) {...}
Run Code Online (Sandbox Code Playgroud)

由于传递哪个列表无关紧要,因此我验证该方法的调用方式如下:

verify(mock).createButtons(Matchers.anyListOf(Button.class));
Run Code Online (Sandbox Code Playgroud)

但是,它的大小List很重要.因此,List列表必须具有X元素并不重要.

这有可能吗?

java list mockito

40
推荐指数
3
解决办法
3万
查看次数

打字稿.使用"import from"时仍需要Triple-Slash引用

在旧版本的Typescript中,需要添加着名的

/// <reference
Run Code Online (Sandbox Code Playgroud)

标签以添加所需的引用.现在,在版本1.6之后,我们可以使用推荐的ES6方式导入依赖项

import Greeter from "./greeter";
Run Code Online (Sandbox Code Playgroud)

我已经阅读了一段时间,但我仍然不清楚是否以及为什么必须完全避免三斜杠引用.

BTW.如果我们使用filesGlob而不是files在tsconfig.json 中,编译器现在知道编译TS文件的顺序是什么?

javascript typescript ecmascript-6

14
推荐指数
1
解决办法
2804
查看次数

基于枚举常量的打字稿排序

是否可以按照这些枚举的声明顺序对枚举列表进行排序?

enum MyEnum {
    VALUE_1,
    VALUE_3,
    VALUE_2
}
Run Code Online (Sandbox Code Playgroud)

我以随机顺序创建一个列表

let list = [MyEnum.VALUE_3, MyEnum.VALUE_1, MyEnum.VALUE_2];
Run Code Online (Sandbox Code Playgroud)

但是当枚举被声明时它被排序

[MyEnum.VALUE_1, MyEnum.VALUE_3, MyEnum.VALUE_2]
Run Code Online (Sandbox Code Playgroud)

PS:我真的很想知道 typescript 是否像我们在 Java 中那样直接订购列表,而不必自己订购。如果我必须自己订购列表,如果订单发生更改,我很容易出错。

enums typescript

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

如果语句执行所有条件

这可能实际上是一个愚蠢的问题,但我想知道是否有可能有if语句执行所有条件.我解释:

if (methodA() && methodB() && methodC()) {code}
Run Code Online (Sandbox Code Playgroud)

code当所有三个方法都返回true时执行.关键是当方法返回false时,不执行其余方法.这对于性能来说通常是一件好事,但是如果我真的需要独立于它们返回的内容执行所有方法并且之后评估表达式并进入if或者not.同样适用于OR或其他任何东西

有没有办法告诉java这样做?我目前的工作是将它分成三个ifs,但这并不总是有效,看起来真的很难看.

java if-statement

10
推荐指数
2
解决办法
5239
查看次数

Java 8:如何比较Set的所有元素

这可能是一个已经问过的问题,但我找不到我需要的答案.

我有一个像对象一样的Set

public class MyObject {
    private LocalDate dateBeginning;
    private LocalDate dateEnd;

    public boolean overlap(MyObject otherDate) { /*code to check overlapping*/ }
}
Run Code Online (Sandbox Code Playgroud)

我需要检查Set是否包含彼此重叠的元素.在"old-java"中,我将通过该集合两次并检查所有存在的组合,然后在找到它时中断或返回.

我们如何在Java 8中使用流和lambdas来做到这一点?

我已经试过了reduction(),filter()但它们似乎都没有用

.filter((obj1, obj2) -> { if (obj1.overlap(obj2)) return true;}) //doesn't work
Run Code Online (Sandbox Code Playgroud)

java java-8 java-stream

10
推荐指数
1
解决办法
3633
查看次数

如何测试使用LocalDateTime.now()创建的日期

我有这门课

class MyObject {
    private LocalDateTime date;

    public LocalDateTime getDate() { return this.date; }

    public void myMethod() {
        this.date = LocalDateTime.now();
    }
}
Run Code Online (Sandbox Code Playgroud)

如何测试日期是否正确设置?我无法模拟,now()因为它是静态的,如果我在测试中使用LocalDateTime,两个日期将不相同.

java unit-testing date

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

模块'ui.router'不可用

我是AngularJS的新手

我收到这个错误:

Uncaught Error: [$injector:modulerr] Failed to instantiate module app due to:
Error: [$injector:modulerr] Failed to instantiate module ui.router due to:
Error: [$injector:nomod] Module 'ui.router' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.
Run Code Online (Sandbox Code Playgroud)

这是index.html文件:

<!doctype html>
<html ng-app="app">
    <head>
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
        <meta charset="utf-8">
        <meta name="description" content="">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Untitled</title>
        <link rel="stylesheet" href="css/style.css">
        <link rel="author" href="humans.txt">



    </head>
    <body …
Run Code Online (Sandbox Code Playgroud)

angularjs

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

如何使用HAPI TERSER解析HL7中的多个OBR段

如何使用terser使用HAPI解析HL7中的多个OBR段

我有像这样的样本hl7消息

MSH|^~\&|SENDERAPP|SENDERFAC|COVCDR|COVCDR|20130212221503||ORU^R01|1676326503009050|P|2.5
PID|1||MRN101||DOE^JOHN^A||20000101|M||W|1 Campus Martius^^Detroit^MI^48226||(313)227-7300||EN|S|||111-11-1111|||H
PV1|1|U| 12E^1211^01||||1689885733^ORANGE TEAM, OMNI|||Med||||Tra|||99999999^SMITH^KEVIN^^^^MD|I|000000000000|YY|P||||||||||||||||||||Ac|||20130224080500
ORC|RE|F78520223|000000000^LA||CM||||20130226020200||||  PICU|||^RESULT PERFORMED|||RES
OBR|1|F78520223|1305611705^LA|0101301^COMPLETE BLOOD COUNT^COMPLETE BLOOD COUNT|||20130226010600|20130226020200||2632||||20130226014200||333333^GEORGE, BOB|||||0001305611705|20130226020200|||F||^^^20130226043000^^EA~^^^^^EA
OBX|1|NM|0106550^WHITE BLOOD CELL COUNT^WHITE BLOOD CELL COUNT||7.9|10e9/L|4.3-11.0||||F|||20130226020200|34333^Kelly, Bacon^^00010033^MOLIS XE2|RES
OBX|2|NM|0104650^RBCx10e12^RBCx10e12||4.09|10e12/L|4.53-5.73|L|||F|||20130226020200|34333^Kelly, Bacon^^00010033^MOLIS XE2|RES
OBX|3|NM|0102150^HEMOGLOBIN^HEMOGLOBIN||12.9|g/dL|13.6-17.4|L|||F|||20130226020200|34333^Kelly, Bacon^^00010033^MOLIS XE2|RES
OBX|4|NM|0102100^HEMATOCRIT^HEMATOCRIT||37.5|%|40.7-50.8|L|||F|||20130226020200|34333^Kelly, Bacon^^00010033^MOLIS XE2|RES
OBX|5|NM|0103500^MEAN CORPUSCULAR VOLUME^MEAN CORPUSCULAR VOLUME||91.7|fL|81.6-96.8||||F|||20130226020200|34333^Kelly, Bacon^^00010033^MOLIS XE2|RES
NTE|1||Test performed at Tulsa
Run Code Online (Sandbox Code Playgroud)

terser.get("/.OBX-3-1"));用来访问OBX父段.如何使用terser获取子OBX段

hl7 hapi

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

如何在具有角度注入参数的打字稿中创建新对象

我有一个打字稿类,其中构造函数有一个普通参数和一个角度注入参数:

export class MyClass {
    private translation:string;

    public static $inject = ['$filter'];
    constructor(name:string, $filter: ng.IFilterService) {
        this.translation = filter('translate')('code').toString();
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我现在想创建一个对象,我该怎么做呢?

new MyClass('myname'); //won't compile because there are too few parameters
new MyClass('myname', filter); //makes no sense since I want to inject it
Run Code Online (Sandbox Code Playgroud)

即使我写了$filter?它也不会工作,因为它无法识别范围并且它将是未定义的。

那么,我怎样才能让它发挥作用呢?

我的方法

假设我在另一个类中,我想在其中创建 MyClass 的对象。以下代码可以工作,但我不喜欢在此类中也注入 $filter 的想法,因为它不需要它。

export class ClassUsingTheOtherClass {
    private filter:ng.IFilterService;

    public static $inject = ['$filter'];
    constructor($filter: ng.IFilterService) {
        this.filter = $filter;
    }

    doThings() {
        var clazz = new MyClass('myName', this.filter); …
Run Code Online (Sandbox Code Playgroud)

dependency-injection inject angularjs typescript

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