By default all the stamps name is "Stamp".
const MyStamp = stampit({})
console.log(MyStamp.name) // "Stamp"
But you can change it by passing the name
property to stampit:
const MyStamp = stampit({ name: "MyFactoryFunction" })
console.log(MyStamp.name) // "MyFactoryFunction"
This metadata does not have a chaining method. This is illegal: MyStamp.name("MyFactoryFunction")
.
- This feature is not part of the
compose
specification. - Won’t work in ES5 environments (like IE11). The name will always be “Stamp”. Name of a function can be set only in >=ES6 environments.
- This code doesn’t work in JavaScript in general:
SmsGateway.name = “bla”
. BecauseFunction.name
is a special protected property. - If any of the stamps you compose have a name then all the derived stamps will have it too.
- The only way to clear the name (reset to the defaults) is to set the name to "Stamp".
MyStamp = MyStamp.compose({ name: "Stamp" })