Skip to content

Latest commit

 

History

History
32 lines (21 loc) · 1.05 KB

name.md

File metadata and controls

32 lines (21 loc) · 1.05 KB

Name

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").

Gotchas

  • 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”. Because Function.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" })