React-ace: ACE establece el valor inicial, no hay efecto de ajuste, no se puede formatear

Creado en 25 dic. 2017  ·  5Comentarios  ·  Fuente: securingsincity/react-ace

Problema

ACE establece el valor inicial, no hay efecto de ajuste, no se puede formatear
Versión: "react-ace": "^5.8.0"

Código de muestra para reproducir su problema

this.state.SimBody = {"id":123456,"name":"ACE","age":111};
<AceEditor
                    readOnly={fale}
                    onChange={this.handleGetBody}
                    width="100%"
                    height="500px"
                    mode="json"
                    theme="github"
                    name="aceCodeEditor"
                    onLoad={this.onLoad}
                    fontSize={14}
                    showPrintMargin={true}
                    showGutter={true}
                    highlightActiveLine={true}
                    value={this.state.modelBody}
                    editorProps={{
                      $blockScrolling: true,
                      enableBasicAutocompletion: true,
                      enableLiveAutocompletion: true,
                      enableSnippets: true
                    }}
                    setOptions={{
                      showLineNumbers: true,
                      tabSize: 2
                    }}/>

Referencias

reaccionar-as
Progreso en: #
Se mostrará así
image
espero asi
image

Comentario más útil

@ Bobcui001 el editor no formatea automáticamente json como lo describe. Sin embargo, para obtener ese formato JSON.stringify(this.state.modelBody, null, '\t'); Esto debería imprimir bastante el json como lo describe.

Todos 5 comentarios

@ Bobcui001 el editor no formatea automáticamente json como lo describe. Sin embargo, para obtener ese formato JSON.stringify(this.state.modelBody, null, '\t'); Esto debería imprimir bastante el json como lo describe.

hola, JSON.stringify(this.state.modelBody, null, '\t') no funcionó,
cuando ingreso
image
y setValue( JSON.stringify(this.state.modelBody, null, '\t')), devolvió:

image
@asegurandosinciudad

@Aaron-Lei prueba
JSON.stringify(JSON.parse(this.state.modelBody), null, 2);

donde el tercer parámetro es el número de espacios que desea.

Mismo número de @Aaron-Lei

Me estoy encontrando con este problema también. A ver si puedo echarle un vistazo cuando tenga algo de tiempo.

EDITAR
Entonces esto sucederá si está ejecutando JSON.stringify dos veces en la misma cadena. Debe ejecutar JSON.parse para cada JSON.stringify , de lo contrario corre el riesgo de agregar barras diagonales adicionales.

En mi caso, estaba encadenando tanto en useEffect como en la gestión estatal.

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

BenBrewerBowman picture BenBrewerBowman  ·  5Comentarios

Jarmahent picture Jarmahent  ·  3Comentarios

tsmirnov picture tsmirnov  ·  4Comentarios

huangjiatian picture huangjiatian  ·  7Comentarios

venil7 picture venil7  ·  3Comentarios