Class JSObject
Represents a reference to a JavaScript object.
Namespace: Evergine.Web
Assembly: Evergine.Web.dll
Syntax
public class JSObject
Constructors
JSObject(IJSInProcessObjectReference)
Initializes a new instance of the JSObject class.
Declaration
public JSObject(IJSInProcessObjectReference reference)
Parameters
| Type | Name | Description |
|---|---|---|
| IJSInProcessObjectReference | reference | Internal object reference. |
JSObject(IJSObjectReference)
Initializes a new instance of the JSObject class.
Declaration
public JSObject(IJSObjectReference reference)
Parameters
| Type | Name | Description |
|---|---|---|
| IJSObjectReference | reference | Internal object reference. |
Properties
Reference
Gets the JavaScrtipt reference of the object.
Declaration
public IJSInProcessObjectReference Reference { get; }
Property Value
| Type | Description |
|---|---|
| IJSInProcessObjectReference |
Methods
AddEventCustomListener(string, Action<string>, string, params object[])
Add event listener to object that retunrs a custom summary output in the form of a string. This version is the most efficient and should be prefered when event data is needed back in evergine.
Declaration
public void AddEventCustomListener(string eventName, Action<string> listener, string summaryFn, params object[] options)
Parameters
| Type | Name | Description |
|---|---|---|
| string | eventName | Name of the event that triggers the listener. |
| Action<string> | listener | Action method to be called. |
| string | summaryFn | Javascript global function that will process the output before sending it. fn(src, event) -> string. |
| object[] | options | Optional parameters. |
AddEventListener(string, Action<JSObject>, params object[])
Add event listener to object. This version is the slowest and should be avoided when event is going to trigger a lot.
Declaration
public void AddEventListener(string eventName, Action<JSObject> listener, params object[] options)
Parameters
| Type | Name | Description |
|---|---|---|
| string | eventName | Name of the event that triggers the listener. |
| Action<JSObject> | listener | Action method to be called. |
| object[] | options | Optional parameters. |
AddSimpleEventListener(string, Action, params object[])
Add simple event listener to object. The listener does not use event information but it the most efficient implementation.
Declaration
public void AddSimpleEventListener(string eventName, Action listener, params object[] options)
Parameters
| Type | Name | Description |
|---|---|---|
| string | eventName | Name of the event that triggers the listener. |
| Action | listener | Action method to be called. |
| object[] | options | Optional parameters. |
Dispose()
Dispose the object.
Declaration
public void Dispose()
GetObjectProperty<T>(string, bool)
Access JSObject property.
Declaration
public T GetObjectProperty<T>(string property, bool warn = true)
Parameters
| Type | Name | Description |
|---|---|---|
| string | property | Name of the property. |
| bool | warn | Show warning if property is not defined. |
Returns
| Type | Description |
|---|---|
| T | Property value. Null if it does not exists. |
Type Parameters
| Name | Description |
|---|---|
| T | Type of the property. |
Invoke(string, bool, params object[])
Invokes the specified JavaScript function synchronously.
Declaration
public void Invoke(string identifier, bool warn = true, params object[] args)
Parameters
| Type | Name | Description |
|---|---|---|
| string | identifier | JavaScript function. |
| bool | warn | Show warning if function is not defined. |
| object[] | args | Function arguments. |
InvokeEventCustomListener(string, string)
Callback for event listeners.
Declaration
[JSInvokable]
public void InvokeEventCustomListener(string eventName, string output)
Parameters
| Type | Name | Description |
|---|---|---|
| string | eventName | Type of event. |
| string | output | Custom output received from javascript. |
InvokeEventListener(string, IJSObjectReference)
Callback for event listeners.
Declaration
[JSInvokable]
public void InvokeEventListener(string eventName, IJSObjectReference el)
Parameters
| Type | Name | Description |
|---|---|---|
| string | eventName | Type of event. |
| IJSObjectReference | el | Event element. |
InvokeEventListenerSimple(string)
Faster implementation of callback for event listeners, but without event information.
Declaration
[JSInvokable]
public void InvokeEventListenerSimple(string eventName)
Parameters
| Type | Name | Description |
|---|---|---|
| string | eventName | Type of event. |
Invoke<T>(string, bool, params object[])
Invokes the specified JavaScript function synchronously.
Declaration
public T Invoke<T>(string identifier, bool warn = true, params object[] args)
Parameters
| Type | Name | Description |
|---|---|---|
| string | identifier | JavaScript function. |
| bool | warn | Show warning if function is not defined. |
| object[] | args | Function arguments. |
Returns
| Type | Description |
|---|---|
| T | Function result. default(T) if it does not exists. |
Type Parameters
| Name | Description |
|---|---|
| T | Return type. |
RemoveEventListener(string, params object[])
Remove event listener from object.
Declaration
public void RemoveEventListener(string eventName, params object[] options)
Parameters
| Type | Name | Description |
|---|---|---|
| string | eventName | Name of the event that triggers the listener. |
| object[] | options | Optional parameters. |
SetObjectProperty<T>(string, T, bool)
Sets JSObject property.
Declaration
public void SetObjectProperty<T>(string property, T value, bool warn = true)
Parameters
| Type | Name | Description |
|---|---|---|
| string | property | Name of the property. |
| T | value | Value of the property. |
| bool | warn | Show warning if function is not defined. |
Type Parameters
| Name | Description |
|---|---|
| T | Type of the property. |