小编Bre*_*han的帖子

单个模式数组中的多个模式引用 - mongoose

您是否可以在mongoose模式中使用对几个不同模式选项的引用来填充数组?

为了澄清这个问题,请说我有以下模式:

var scenarioSchema = Schema({
  _id     : Number,
  name    : String,
  guns : []
});

var ak47 = Schema({
  _id     : Number
  //Bunch of AK specific parameters
});

var m16 = Schema({
  _id     : Number
  //Bunch of M16 specific parameters
});
Run Code Online (Sandbox Code Playgroud)

我可以用一堆ak47 m16 填充枪阵吗?我可以把BOTH放在同一个枪阵中吗?或者它是否需要在资产数组中使用填充ref,这样会将其限制为单个特定类型?

guns: [{ type: Schema.Types.ObjectId, ref: 'm16' }]
Run Code Online (Sandbox Code Playgroud)

我知道我可以为不同的枪类型提供单独的数组,但是随着项目的扩展,这将在模式中创建大量的额外字段,其中大部分将根据加载的方案保留为空.

var scenarioSchema = Schema({
  _id     : Number,
  name    : String,
  ak47s : [{ type: Schema.Types.ObjectId, ref: 'ak47' }],
  m16s: [{ type: Schema.Types.ObjectId, ref: 'm16' …
Run Code Online (Sandbox Code Playgroud)

javascript mongoose mongodb mongoose-populate

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

RxJS订阅者取消订阅与完成

我是通过RxJS文档阅读,并希望确保我理解之间的差异Subscriber.unsubscribe()Subscriber.complete().

假设我有两个订阅者,即subscriber1和subscriber2的observable.如果subscriber1呼叫取消订阅他们的订阅,它将不再接收来自observable的通知,但subscriber2将继续接收它们.

文档.complete():

Observer回调从Observable接收类型为complete的无值通知.通知Observer Observable已完成发送基于推送的通知.

这是否意味着在上面的相同场景中,subscriber1可以调用complete并且它将结束observable并停止subscriber1和subscriber2的流?

javascript rxjs

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

Angular2动画媒体查询

我一直在玩Angular2的动画DSL,我对如何将动画限制为特定的媒体屏幕大小感到困惑.

例如,假设我在主页上有400px宽的徽标,当用户访问计算机显示器上的任何其他页面时,缩小到200px宽.

...
animations: [
trigger('homeLogoState',[
    state('inactive', style({
      width: '200px',
      transition: 'width'
    })),
    state('active', style({
      width: '400px',
      transition: 'width'
    })),
    transition('inactive <=> active', animate('300ms ease-in'))
  ])
]
...
Run Code Online (Sandbox Code Playgroud)

然而,在移动设备上,每页需要保持100px.

我理解我可以通过控制DOM中显示的内容来控制不同的动画,如下所示,但这可能会产生大量的代码重复,以处理每个屏幕大小的每个动画变化.

<div class="hidden-under-1920px" @logoAnimationOne="page">
  <img src="logo.png">
</div>
<div  class="hidden-under-1280px" @logoAnimationTwo="page">
  <img src="logo.png">
</div>
Run Code Online (Sandbox Code Playgroud)

将不同的动画约束到特定的@media选择器大小的正确方法是什么?

javascript css animation angular

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