FormidableLabs/rapscallion

dangerouslySetInnerHTML fails with arrays

Open

#100 aberto em 16 de jun. de 2017

Ver no GitHub
 (0 comments) (0 reactions) (0 assignees)JavaScript (68 forks)batch import
enhancementhelp wanted

Métricas do repositório

Stars
 (1.397 stars)
Métricas de merge de PR
 (Nenhuma PRs mesclada em 30d)

Description

If you attempt to render a tag such as this:

<p dangerouslySetInnerHTML={{
		__html: content,
}}/>

where content is an array, Rapscallon will fail on the adler checksum generator:

/Users/gcp/Thumbtack/universal-frontend/node_modules/@thumbtack/rapscallion/lib/adler32.js:28
    b += a += data.charCodeAt(i);
                   ^

TypeError: data.charCodeAt is not a function

renderToString() allows for arrays, so it seems like we should handle them here. I can fix by specifying content[0] (all of the arrays I'm dealing with at the moment are 1-length), though I'd need to do some additional research to know exactly what React is expected to output when an array is provided.

Guia do colaborador