log (LevelDown-compatible database that stores the log)
ipfs (IPFS object): an IPFS object instance. If you already can provide an IPFS object, pass it in here.
retainLog (boolean, defaults to false): whether or not the log should be retained. Besides wasting storage space, setting this option to true` provides no direct benefit, except if you want to somehow explore the log database.
Default arguments
You can create a constructor that curries some default arguments by using IPFSLevel.defaults(options) like this:
Emitted whenever there is a change in the database. The event payload is a change object, which has the following properties:
type (string: "put" or "del")
key (string): the key affected by this change
value (any): the new value for the mentioned key
emit("new head", cid)
Whenever the log has a new head. The payload, cid is a content identifier (internal to IPFS)
With Levelup
This default options feature may be useful if you want to pass a constructor into which you'll have no saying about the options, like on the Levelup constructor:
constLevelUp=require('levelup')constMemdown=require('memdown')// any leveldown db will do for caching log entriesconstIPFSLevel=require('ipfs-level').defaults({log: Memdown('some-partition-name')// log database should be scoped to partition})constdb=LevelUp({db: IPFSLevel})// now you have a levelup db you can use
Test and debug
This package uses debug, so you can activate debug messages by setting the environment variable DEBUG to ipfs-level:*
请发表评论