You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					45 lines
				
				1016 B
			
		
		
			
		
	
	
					45 lines
				
				1016 B
			| 
											3 years ago
										 | # `append-field`
 | ||
|  | 
 | ||
|  | A [W3C HTML JSON forms spec](http://www.w3.org/TR/html-json-forms/) compliant | ||
|  | field appender (for lack of a better name). Useful for people implementing | ||
|  | `application/x-www-form-urlencoded` and `multipart/form-data` parsers. | ||
|  | 
 | ||
|  | It works best on objects created with `Object.create(null)`. Otherwise it might | ||
|  | conflict with variables from the prototype (e.g. `hasOwnProperty`). | ||
|  | 
 | ||
|  | ## Installation
 | ||
|  | 
 | ||
|  | ```sh | ||
|  | npm install --save append-field | ||
|  | ``` | ||
|  | 
 | ||
|  | ## Usage
 | ||
|  | 
 | ||
|  | ```javascript | ||
|  | var appendField = require('append-field') | ||
|  | var obj = Object.create(null) | ||
|  | 
 | ||
|  | appendField(obj, 'pets[0][species]', 'Dahut') | ||
|  | appendField(obj, 'pets[0][name]', 'Hypatia') | ||
|  | appendField(obj, 'pets[1][species]', 'Felis Stultus') | ||
|  | appendField(obj, 'pets[1][name]', 'Billie') | ||
|  | 
 | ||
|  | console.log(obj) | ||
|  | ``` | ||
|  | 
 | ||
|  | ```text | ||
|  | { pets: | ||
|  |    [ { species: 'Dahut', name: 'Hypatia' }, | ||
|  |      { species: 'Felis Stultus', name: 'Billie' } ] } | ||
|  | ``` | ||
|  | 
 | ||
|  | ## API
 | ||
|  | 
 | ||
|  | ### `appendField(store, key, value)`
 | ||
|  | 
 | ||
|  | Adds the field named `key` with the value `value` to the object `store`. | ||
|  | 
 | ||
|  | ## License
 | ||
|  | 
 | ||
|  | MIT |