Browse Source

fix(core): fix condition errors

#2404
pull/2522/head
mehmet-erim 7 years ago
parent
commit
99fec57220
  1. 8
      npm/ng-packs/packages/core/src/lib/directives/replaceable-template.directive.ts
  2. 12
      npm/ng-packs/packages/core/src/lib/states/replaceable-components.state.ts

8
npm/ng-packs/packages/core/src/lib/directives/replaceable-template.directive.ts

@ -33,12 +33,14 @@ export class ReplaceableTemplateDirective implements OnInit, OnDestroy, OnChange
any
>;
externalComponent: Type<any> = null; // externalComponent must equal to null
externalComponent: Type<any>;
defaultComponentRef: any;
defaultComponentSubscriptions = {} as ABP.Dictionary<Subscription>;
initialized = false;
constructor(
private injector: Injector,
private templateRef: TemplateRef<any>,
@ -64,7 +66,7 @@ export class ReplaceableTemplateDirective implements OnInit, OnDestroy, OnChange
.pipe(
filter(
(res = {} as ReplaceableComponents.ReplaceableComponent) =>
!compare(res.component, this.externalComponent),
!this.initialized || !compare(res.component, this.externalComponent),
),
takeUntilDestroy(this),
)
@ -86,6 +88,8 @@ export class ReplaceableTemplateDirective implements OnInit, OnDestroy, OnChange
} else {
this.vcRef.createEmbeddedView(this.templateRef, this.context);
}
this.initialized = true;
});
}

12
npm/ng-packs/packages/core/src/lib/states/replaceable-components.state.ts

@ -33,12 +33,12 @@ export class ReplaceableComponentsState {
) {
let { replaceableComponents } = getState();
if (replaceableComponents && replaceableComponents.length) {
const index = replaceableComponents.findIndex(component => component.key === payload.key);
if (index > -1) {
replaceableComponents[index] = payload;
}
const index = snq(
() => replaceableComponents.findIndex(component => component.key === payload.key),
-1,
);
if (index > -1) {
replaceableComponents[index] = payload;
} else {
replaceableComponents = [...replaceableComponents, payload];
}

Loading…
Cancel
Save