小编Lou*_*upi的帖子

为什么打字稿会在类型联合上给出类型错误?

每当我必须使用具有组合联合类型的对象时,打字稿都会抱怨我尝试访问的属性,并且我也没有获得自动完成功能。例如这个:

interface A {
  id: string;
  value: number;
}

interface B {
  result: string;
}

export type Types = A | B;

function test(obj: Types) {
  obj.result;  // want to work with obj as though it implements interface B
}
Run Code Online (Sandbox Code Playgroud)

当我从打字稿访问resultid、 时,出现错误:value

Property 'result' does not exist on type 'Types'.
  Property 'result' does not exist on type 'A'
Run Code Online (Sandbox Code Playgroud)

有什么方法可以缩小接口类型,以便获得更好的 IDE 体验吗?

javascript typescript union-types

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

如何将 BackgroundImage 添加到 Xamarin Forms 中的 ListView?

我知道没有BackgroundImage为 ListView 类调用属性- 只有BackgroundColor属性,但这不是我要找的。有没有办法将背景图像添加到 ListView,这样当我滚动图像时,图像会保持原位,并且在滚动时图块只是“移动”在图像上。

将图像添加到ContentPage也不起作用,因为 ListView 只是覆盖它。

c# xaml background-image xamarin xamarin.forms

5
推荐指数
1
解决办法
2450
查看次数

使用LinkedList进行碰撞检测时Java游戏崩溃

我正在制作一个基于太空入侵者的2D java游戏.在我的Game类中,我有以下3个字段:

//enemies left to kill
private LinkedList<Enemy> enemiesLeft = new LinkedList<Enemy>(); 
//enemies killed
private LinkedList<Enemy> enemiesKilled = new LinkedList<Enemy>();
//missiles that have been fired
private LinkedList<Missile> missiles = new LinkedList<Missile>();
Run Code Online (Sandbox Code Playgroud)

在我的checkCollision()方法,我通过每个运行EnemyenemiesLeft列表,并检查每次碰撞Missilemissiles列表,但它抛出一个ConcurrentModificationException.

这是checkCollision()方法:

private void checkCollisions(){
  //make an iterator over enemies
  ListIterator<Enemy> iterEnemies = enemiesLeft.listIterator();   

  //loop through enemies
  while(iterEnemies.hasNext()){
    //error is thrown at below line
    Enemy e = iterEnemies.next();  //current Enemy

    //go through each Missile
    ListIterator<Missile> …
Run Code Online (Sandbox Code Playgroud)

java multithreading linked-list concurrentmodification

0
推荐指数
1
解决办法
186
查看次数