[@rxap/directives](../wiki/globals) / MethodTemplateDirective

# Class: MethodTemplateDirective\<ReturnType, Parameters\>

Defined in: [method-template.directive.ts:33](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L33)

## Type Parameters

• **ReturnType** = `any`

• **Parameters** = `any`

## Implements

- `OnInit`
- `OnChanges`

## Constructors

### new MethodTemplateDirective()

> **new MethodTemplateDirective**\<`ReturnType`, `Parameters`\>(`template`, `viewContainerRef`, `cdr`): [`MethodTemplateDirective`](../wiki/Class.MethodTemplateDirective)\<`ReturnType`, `Parameters`\>

Defined in: [method-template.directive.ts:61](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L61)

#### Parameters

##### template

`TemplateRef`\<[`MethodTemplateDirectiveContext`](../wiki/Interface.MethodTemplateDirectiveContext)\<`ReturnType`\>\>

##### viewContainerRef

`ViewContainerRef`

##### cdr

`ChangeDetectorRef`

#### Returns

[`MethodTemplateDirective`](../wiki/Class.MethodTemplateDirective)\<`ReturnType`, `Parameters`\>

## Properties

### cdr

> `protected` `readonly` **cdr**: `ChangeDetectorRef`

Defined in: [method-template.directive.ts:67](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L67)

***

### embedded

> **embedded**: `EventEmitter`\<`any`\>

Defined in: [method-template.directive.ts:59](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L59)

***

### errorTemplate?

> `optional` **errorTemplate**: `TemplateRef`\<[`MethodTemplateDirectiveErrorContext`](../wiki/Interface.MethodTemplateDirectiveErrorContext)\>

Defined in: [method-template.directive.ts:40](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L40)

***

### executed$

> **executed$**: `EventEmitter`\<`any`\>

Defined in: [method-template.directive.ts:48](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L48)

***

### executing$

> **executing$**: `ToggleSubject`

Defined in: [method-template.directive.ts:57](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L57)

true - a remote method call is in progress

***

### failure$

> **failure$**: `EventEmitter`\<`Error`\>

Defined in: [method-template.directive.ts:50](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L50)

***

### immediately

> **immediately**: `boolean` = `false`

Defined in: [method-template.directive.ts:46](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L46)

***

### loadingTemplate?

> `optional` **loadingTemplate**: `TemplateRef`\<`void`\>

Defined in: [method-template.directive.ts:42](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L42)

***

### method

> **method**: `Method`\<`ReturnType`, `Parameters`\>

Defined in: [method-template.directive.ts:36](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L36)

***

### parameters?

> `optional` **parameters**: `Parameters`

Defined in: [method-template.directive.ts:38](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L38)

***

### successful$

> **successful$**: `EventEmitter`\<`ReturnType`\>

Defined in: [method-template.directive.ts:52](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L52)

***

### withoutParameters

> **withoutParameters**: `boolean` = `false`

Defined in: [method-template.directive.ts:44](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L44)

## Methods

### execute()

> **execute**(`parameters`): `Promise`\<`void`\>

Defined in: [method-template.directive.ts:95](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L95)

#### Parameters

##### parameters

`undefined` | `Parameters`

#### Returns

`Promise`\<`void`\>

***

### executed()

> `protected` **executed**(`result`): `void`

Defined in: [method-template.directive.ts:121](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L121)

#### Parameters

##### result

`any`

#### Returns

`void`

***

### failure()

> `protected` **failure**(`error`): `void`

Defined in: [method-template.directive.ts:125](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L125)

#### Parameters

##### error

`Error`

#### Returns

`void`

***

### ngOnChanges()

> **ngOnChanges**(`changes`): `void`

Defined in: [method-template.directive.ts:76](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L76)

A callback method that is invoked immediately after the
default change detector has checked data-bound properties
if at least one has changed, and before the view and content
children are checked.

#### Parameters

##### changes

`SimpleChanges`

The changed properties.

#### Returns

`void`

#### Implementation of

`OnChanges.ngOnChanges`

***

### ngOnInit()

> **ngOnInit**(): `void`

Defined in: [method-template.directive.ts:83](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L83)

A callback method that is invoked immediately after the
default change detector has checked the directive's
data-bound properties for the first time,
and before any of the view or content children have been checked.
It is invoked only once when the directive is instantiated.

#### Returns

`void`

#### Implementation of

`OnInit.ngOnInit`

***

### onConfirmed()

> **onConfirmed**(): `Promise`\<`void`\>

Defined in: [method-template.directive.ts:91](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L91)

#### Returns

`Promise`\<`void`\>

***

### renderErrorTemplate()

> `protected` **renderErrorTemplate**(`error`): `void`

Defined in: [method-template.directive.ts:133](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L133)

#### Parameters

##### error

`Error`

#### Returns

`void`

***

### renderTemplate()

> `protected` **renderTemplate**(`result`): `void`

Defined in: [method-template.directive.ts:147](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L147)

#### Parameters

##### result

`ReturnType`

#### Returns

`void`

***

### setParameter()

> **setParameter**\<`Key`\>(`parameterKey`, `value`): `void`

Defined in: [method-template.directive.ts:113](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L113)

#### Type Parameters

• **Key** *extends* `string` \| `number` \| `symbol`

#### Parameters

##### parameterKey

`Key`

##### value

`Parameters`\[`Key`\]

#### Returns

`void`

***

### successful()

> `protected` **successful**(`result`): `void`

Defined in: [method-template.directive.ts:129](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L129)

#### Parameters

##### result

`ReturnType`

#### Returns

`void`

***

### updateParameters()

> **updateParameters**(`parameters`): `void`

Defined in: [method-template.directive.ts:117](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L117)

#### Parameters

##### parameters

`Partial`\<`Parameters`\>

#### Returns

`void`

***

### ngTemplateContextGuard()

> `static` **ngTemplateContextGuard**\<`T`\>(`dir`, `ctx`): `ctx is MethodTemplateDirectiveContext<T>`

Defined in: [method-template.directive.ts:71](https://gitlab.com/rxap/packages/-/blob/3eebed1be2bbb37bc0d65959f8fecbb850c0b8aa/packages/angular/directives/src/lib/method-template.directive.ts#L71)

#### Type Parameters

• **T**

#### Parameters

##### dir

[`MethodTemplateDirective`](../wiki/Class.MethodTemplateDirective)\<`T`\>

##### ctx

`any`

#### Returns

`ctx is MethodTemplateDirectiveContext<T>`
