React-ace: ACE mengatur nilai awal, tidak ada efek bungkus, tidak dapat memformat

Dibuat pada 25 Des 2017  ·  5Komentar  ·  Sumber: securingsincity/react-ace

Masalah

ACE mengatur nilai awal, tidak ada efek bungkus, tidak dapat memformat
Versi: "react-ace": "^5.8.0"

Contoh kode untuk mereproduksi masalah Anda

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
                    }}/>

Referensi

React-ace
Kemajuan pada: #
Ini akan menunjukkan seperti ini
image
Saya berharap seperti ini
image

Komentar yang paling membantu

@ Bobcui001 editor tidak memformat json secara otomatis seperti yang Anda jelaskan. Namun untuk memasukkannya ke dalam format itu JSON.stringify(this.state.modelBody, null, '\t'); Ini seharusnya cukup mencetak json seperti yang Anda jelaskan.

Semua 5 komentar

@ Bobcui001 editor tidak memformat json secara otomatis seperti yang Anda jelaskan. Namun untuk memasukkannya ke dalam format itu JSON.stringify(this.state.modelBody, null, '\t'); Ini seharusnya cukup mencetak json seperti yang Anda jelaskan.

hai, JSON.stringify(this.state.modelBody, null, '\t') tidak berfungsi,
ketika saya memasukkan
image
dan setValue( JSON.stringify(this.state.modelBody, null, '\t')), ia mengembalikan:

image
@securingsincity

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

di mana param ketiga adalah jumlah spasi yang Anda inginkan.

Masalah yang sama dari @Aaron-Lei

Saya mengalami masalah ini juga. Saya akan melihat apakah saya dapat memeriksanya ketika saya memiliki waktu ekstra.

EDIT
Jadi ini akan terjadi jika Anda menjalankan JSON.stringify dua kali pada string yang sama. Anda perlu menjalankan JSON.parse untuk setiap JSON.stringify , jika tidak, Anda berisiko menambahkan garis miring tambahan.

Dalam kasus saya, saya merangkai di useEffect dan dalam manajemen negara.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat