小编rhy*_*lay的帖子

Angular2在假和可观察过滤器上运行动画

我有一个组件,我可以在这样的条目动画,入口动画工作正常.handleRemoval方法被执行,事件发射器从组件列表中过滤组件(使用observable).但是:离开动画不会运行:

    @Component({
        animations: [
            trigger(
            'enterAnimation', [
                transition(':enter', [
                style({transform: 'translateY(100%)', opacity: 0}),
                animate('500ms', style({transform: 'translateY(0)', opacity: 1}))
                ]),
                transition(':leave', [
                style({transform: 'translateY(0)', opacity: 1}),
                animate('500ms', style({transform: 'translateY(100%)', opacity: 0}))
                ])
            ]
            )
        ],
        template: `
            <div class="mb1 card text-xs-center rounded" [@enterAnimation]="show">
Run Code Online (Sandbox Code Playgroud)

...

export class ContentPropertyComponent {

    show: boolean = false;

    constructor(private router: Router) {
        this.show = true;
     }

    handleRemoval(contentProperty: PropertyModel) {
        this.show = false;
        this.delete.emit(this.contentProperty);
    }
}
Run Code Online (Sandbox Code Playgroud)

任何帮助赞赏.

animation angular2-template angular

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

WooCommerce - 检查属性是否存在,然后给出变量属性值

我已经为我的woocommerce产品创建了一个新的属性与slug'短标题'.这个想法是我想用短标题覆盖商店页面上的标题.我已经设置了一个包含以下内容的循环:

if (get_post_meta($product->id, 'short-code', true)) {
$product_name =  (get_post_meta($product->id, 'short-code', true));
} else {
$product_name =  get_the_title();
}
echo '<div class="product-below"><h4 class="product-name">'.$product_name.'</h4>'; 
Run Code Online (Sandbox Code Playgroud)

但是,当我在产品的短标题字段中输入值时,这不会覆盖标题.我想我需要一个与get_post_meta不同的功能

php wordpress woocommerce

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

Angular4 - 如何交错可观察数组的动画

我正在尝试对 Angular4 中的一系列可观察对象执行交错动画,这是我的代码:

  animations: [
    trigger('fade', [
      transition(':enter', [style({opacity: 0}), animate('2s ease')])
    ]),
    trigger('stagger', [
      transition(':enter', [
        query(
          ':enter', 
          stagger(
            '0.5s', 
            [animateChild()]
          ),
          { optional: true }
        )
      ])
    ])
  ], 

export class TimetablePage {
  classes: Observable<ClassTime[]>;
Run Code Online (Sandbox Code Playgroud)

还有我的模板:

  <ion-list [@stagger]>
    <timetable-item 
    *ngFor="let class of classes | async | sort: 'time'" 
    [class]="class"
    [@fade]>
    </timetable-item>
  </ion-list>
Run Code Online (Sandbox Code Playgroud)

淡入淡出动画正在运行,但动画未交错。

animation ionic3 angular

5
推荐指数
0
解决办法
326
查看次数

通过映射另一个Observable返回一个Observable

我正在尝试映射一个可观察对象,从返回的可观察对象中获取一个值,然后将该值提供给另一个可观察对象,然后返回该结果。这是我到目前为止的内容:

  getJobsByUser(user: User): Observable<Job[]> {
    return this.getUsersGroupsAsObservable(user.uid, 'contacts').map(groups => {
      groups.map(group => {
        this.getJobsbyGroup(group.id);
      });
    });

  getJobsbyGroup(groupId: string): Observable<Job[]> {
    return this.afs
      .collection<Job>('jobs', ref => ref.where(`group.${groupId}`, '==', true))
      .valueChanges();
  }

  getUsersGroupsAsObservable(
    userId: string,
    type: string = 'users',
  ): Observable<Group[]> {
    return this.afs
      .collection<Group>('groups', ref =>
        ref.where(`${type}.${userId}`, '==', true),
      )
      .valueChanges();
  }
Run Code Online (Sandbox Code Playgroud)

问题是打字稿表明我的getJobsByUser函数将返回type:void的可观察对象。当我将其输出到模板上时,我什么也没有得到或未定义。我觉得我需要使用switchMap,但对rx / js有点模糊。我不确定如何返回Job []类型的Observable

更新:在@Pranay Rana的帮助下,我现在正在返回数组,并且可以得到如下第一个值:

  getJobsByUser(user: User): Observable<Job[]> {
    return this.getUsersGroupsAsObservable(user.uid, 'contacts').pipe(
      mergeMap(groups => {
        // returns an array of groups - we need to map this
        return …
Run Code Online (Sandbox Code Playgroud)

rxjs angular

5
推荐指数
2
解决办法
5159
查看次数

Firestore-如何从值映射中添加/减去

我正在按照Firestore的说明存储阵列:https//firebase.google.com/docs/firestore/solutions/arrays

现在我想做的就是推到这张地图。例如现在我有:

Contacts
   contact1: true
Run Code Online (Sandbox Code Playgroud)

但是我想添加或删除一个联系人,例如:

Contacts
   contact1: true
   contact2: true
Run Code Online (Sandbox Code Playgroud)

我尝试获取Contacts映射并使用push方法,但是由于它不是传统数组,因此我认为这不会起作用。例如:

this.afs
  .doc(`groups/${group.id}`)
  .ref.get()
  .then(doc => {
    let contacts: Array<any> = doc.data().contacts;

    contacts.push({ // error here as push is not a function
      [contactId]: true
    });

    console.log(contacts);
  });
Run Code Online (Sandbox Code Playgroud)

有没有更简单的方法可以执行此操作-我错过了什么吗?

firebase angularfire2 angular google-cloud-firestore

4
推荐指数
2
解决办法
4382
查看次数

Angular2可观察到的回调

我试图在可观察对象完成后实现一个简单的回调,这是我的代码:

ngOnInit() {
    this.propertyService
    .getProperties()
    .subscribe(
        (data: ContentPropertyModel[]) => this.properties = data
    );
    this.status = 'active';
}
Run Code Online (Sandbox Code Playgroud)

但是,状态在可观察运行之前已更改。关于如何在可观察到的运行后如何更改this.status的任何想法?

observable angular

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

Wordpress Gutenberg withSelect 获取文章类型列表

我正在使用 Gutenberg 的 withSelect 包来尝试获取属于该站点的所有帖子类型。这是我的代码:

export default withSelect( select => {
    // shorthand
    const { getEntityRecords } = select( 'core' );

    return {
        typesList: getEntityRecords( 'types', '' ),
    };
} )( SearchEdit );
Run Code Online (Sandbox Code Playgroud)

但我没有得到任何回报。我还发现 withSelect 的文档非常稀疏,所以如果有人有任何进一步的信息会很好,我会尝试更新文档。

wordpress-gutenberg gutenberg-blocks

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

高级自定义字段的三元运算符

我一直在使用高级自定义字段创建我自己的WP主题,我继续输入代码如下:

<?php
if(get_field('featured_courses_heading_text', 'option')) {
    echo get_field('featured_courses_heading_text', 'option');
}
?>
Run Code Online (Sandbox Code Playgroud)

是否有一个更精简的代码版本,我可以使用三元运算符?我试着查看文档,但找不到任何东西

php wordpress wordpress-theming ternary-operator advanced-custom-fields

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