Container
Stratox also comes with a specialized JavaScript container library designed for seamless communication between template views and the application. It allows for efficient data exchange.
Access container
A new container instance will be binded to each Stratox class instance. You can then access the container instance both inside a component and outside of it.
1. Inside component
export function custom({ services })
{
if (services.has("fallback")) {
services.get("fallback");
}
...2. Outside of component
const stratox = new Stratox("#ingress");
const serviceContainer = stratox.container();Container usage
Bellow is some quick example on different ways you can use the container.
// Example 1
serviceContainer.set("someObject", { test: "Container 1" });
console.log(serviceContainer.get("someObject").test);
// Log response: Container 1
// Example 2
serviceContainer.set("passingAFunction", function(arg1, arg2) {
alert(arg1+" "+arg2);
});
serviceContainer.get("passingAFunction", "Hello", "world!");
// Alert response: Hello world!Stand alone
You can also use the container in other projects.
Method list
Set a container or factory
key: Unique container key/string identifier
value: Mixed value of whatever you want to share, e.g. String, number, object, function.
overwrite: Attempting to set a container multiple times will trigger a warning unless manual consent is provided by setting "overwrite" to true.
Set factory only
key: Unique factory key/string identifier
value: callable
overwrite: Attempting to set a container multiple times will trigger a warning unless manual consent is provided by setting "overwrite" to true.
Get a container or factory
key: Unique container key/string identifier
args: pass arguments to possible factory/function
Check if container/factory exists
key: Unique container key/string identifier
Check if is strict a "container".
key: Unique container key/string identifier
Check if is strict a "factory/function".
key: Unique factory key/string identifier
Last updated