Page Contents
Home > @loopback/context > inject > binding
inject.binding() function
Inject the binding object for the given key. This is useful if a binding needs to be set up beyond just a constant value allowed by @inject.setter
. The injected binding is found or created based on the metadata.bindingCreation
option. See BindingCreationPolicy
for more details.
Signature:
binding: (bindingKey?: string | BindingKey<unknown>, metadata?: InjectBindingMetadata) => (target: Object, member: string | undefined, methodDescriptorOrParameterIndex?: number | TypedPropertyDescriptor<any> | undefined) => void
Parameters
Parameter | Type | Description |
---|---|---|
bindingKey | string | BindingKey<unknown> | (Optional) Binding key |
metadata | InjectBindingMetadata | (Optional) Metadata for the injection |
Returns:
(target: Object, member: string | undefined, methodDescriptorOrParameterIndex?: number | TypedPropertyDescriptor<any> | undefined) => void
Example
class MyAuthAction {
@inject.binding('current-user', {
bindingCreation: BindingCreationPolicy.ALWAYS_CREATE,
})
private userBinding: Binding<UserProfile>;
async authenticate() {
this.userBinding.toDynamicValue(() => {...});
}
}