{
    "componentChunkName": "component---src-templates-doc-page-jsx",
    "path": "/angular-data-grid/value-parsers/",
    "result": {"data":{"markdownRemark":{"htmlAst":{"type":"element","tagName":"div","properties":{},"children":[{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"After editing cells in the grid you have the opportunity to parse the value before inserting it into your data. This is done using Value Parsers."}]},{"type":"element","tagName":"h2","properties":{"id":"value-parser","style":"position:relative;"},"children":[{"type":"text","value":"Value Parser"},{"type":"element","tagName":"a","properties":{"href":"#value-parser","ariaLabel":"value parser permalink","className":["docs-header-icon","after"]},"children":[{"type":"element","tagName":"svg","properties":{"id":"icon","xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 32 32"},"children":[{"type":"element","tagName":"path","properties":{"d":"M29.25,6.76a6,6,0,0,0-8.5,0l1.42,1.42a4,4,0,1,1,5.67,5.67l-8,8a4,4,0,1,1-5.67-5.66l1.41-1.42-1.41-1.42-1.42,1.42a6,6,0,0,0,0,8.5A6,6,0,0,0,17,25a6,6,0,0,0,4.27-1.76l8-8A6,6,0,0,0,29.25,6.76Z"},"children":[]},{"type":"element","tagName":"path","properties":{"d":"M4.19,24.82a4,4,0,0,1,0-5.67l8-8a4,4,0,0,1,5.67,0A3.94,3.94,0,0,1,19,14a4,4,0,0,1-1.17,2.85L15.71,19l1.42,1.42,2.12-2.12a6,6,0,0,0-8.51-8.51l-8,8a6,6,0,0,0,0,8.51A6,6,0,0,0,7,28a6.07,6.07,0,0,0,4.28-1.76L9.86,24.82A4,4,0,0,1,4.19,24.82Z"},"children":[]}]}]}]},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"For example suppose you are editing a number using the default editor. The result will be a String, however you will probably want to store the result as a number. Use a Value Parser to convert the String to a Number."}]},{"type":"element","tagName":"snippet","properties":{"spacebetweenproperties":"true"},"children":[{"type":"text","value":"\nconst gridOptions = {\n    columnDefs: [\n        {\n            // name is a string, so don't need to convert\n            field: 'name',\n            editable: true,\n        },\n        {\n            // age is a number, so want to convert from string to number\n            field: 'age',\n            editable: true,\n            valueParser: params => Number(params.newValue)\n        }\n    ]\n}\n"}]},{"type":"element","tagName":"div","properties":{},"children":[{"type":"element","tagName":"api-documentation","properties":{"source":"column-properties/properties.json","section":"editing","names":"[\"valueParser\"]"},"children":[]}]},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The return value of a value parser should be the result of the parse, i.e. return the value you want stored in the data."}]},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Below shows an example using value parsers. The following can be noted:"}]},{"type":"element","tagName":"ul","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"All columns are editable. After any edit, the console prints the new data for that row."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"Column 'Name' is a string column. No parser is needed."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"Column 'Bad Number' is bad because after an edit, the value is stored as a string in the data, whereas the data value should be number type."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"Column 'Good Number' is good because after an edit, the value is converted to a number using the value parser."}]},{"type":"text","value":"\n"}]},{"type":"element","tagName":"div","properties":{},"children":[{"type":"element","tagName":"grid-example","properties":{"title":"Value Parsers","name":"example-parsers","type":"generated","options":"{ \"exampleHeight\": 550 }"},"children":[]}]}]},"frontmatter":{"title":"Parsing Values","version":null,"enterprise":null,"sideMenu":null,"description":null},"headings":[{"id":"value-parser","depth":2,"value":"Value Parser"}]}},"pageContext":{"frameworks":["javascript","react","angular","vue"],"framework":"angular","srcPath":"/value-parsers","pageName":"value-parsers"}},
    "staticQueryHashes": ["1766026005","699667431","940729948"]}