Rich Text
Começaremos personalizando a página inicial. Na pasta /store/blocks do seu tema, você encontrará um arquivo chamadohome.jsonc. Este arquivo determina como os blocos que você pretende usar são organizados. A linguagem usada na composição do layout é simples e baseada em JSON.
Em home.jsonc, você notará um bloco que é padrão em todos os temas, ou seja,store.home. Este bloco determina quais blocos filhos serão exibidos na página inicial.
_10{_10 "store.home": {_10 "blocks": []_10 }_10 ..._10}
Vamos usar Rich Text em seu corpo:
_10{_10 "store.home": {_10 "blocks": [_10 "rich-text"_10 ]_10 }_10 ..._10}
Portanto, store.home agora sabe que precisa renderizar um Rich Text. No entanto, ainda não especificamos qual visual esse Rich Text deve adotar. Para isso, precisaremos definir o bloco.
Definindo blocos
A definição de um bloco deve sempre ser executada separadamente de qualquer outro bloco, no nível de origem do arquivo JSON.
_10{_10 "store.home": {_10 "blocks": [_10 "rich-text" <----- Aqui o bloco é usado dentro de outro_10 ]_10 },_10 "rich-text": { <----- Aqui está no nível da fonte_10 }_10}
Na definição do bloco, você pode definir seu comportamento e visual. Pontos de personalização devem ser usados para conseguir isso, então vamos começar usando os props de Rich Text:
_10{_10 "store.home": {_10 "blocks": ["rich-text"]_10 },_10 "rich-text": {_10 "props": {}_10 }_10}
Leia o Rich Text documentação mais uma vez e vamos definir os adereços que usaremos para personalizar o bloco.
Queremos obter um simples "Olá, Mundo!", E olhando para as props, notamos um chamado: text (Texto escrito em linguagem de marcação a ser exibido). Esta é a prop que determina qual texto será exibido.
Incluindo esta prop, agora temos o seguinte:
_10{_10 "store.home": {_10 "blocks": ["rich-text"]_10 },_10 "rich-text": {_10 "props": {_10 "text": "Hello, World!"_10 }_10 }_10}
Lendo a documentação do Markdown, aprendemos que, para que um texto apareça em itálico, precisamos apenas colocar esse texto entre *
_10{_10 "store.home": {_10 "blocks": ["rich-text"]_10 },_10 "rich-text": {_10 "props": {_10 "text": "*Hello, World!*"_10 }_10 }_10}
Para centralizar o alinhamento do texto, podemos adicionar a prop textPosition e atribuir a ela o valor CENTER:
_11{_11 "store.home": {_11 "blocks": ["rich-text"]_11 },_11 "rich-text": {_11 "props": {_11 "text": "*Hello, World!*",_11 "textPosition": "CENTER"_11 }_11 }_11}
Atividade
Defina um Rich Text em sua página inicial e crie um negrito "Hello, World!" que está alinhado à direita. Faça isso trocando o código já presente no arquivo store/blocks/home.jsonc por este:
_13{_13 "store.home": {_13 "blocks": [_13+ "rich-text"_13 ]_13 },_13+ "rich-text": {_13+ "props": {_13+ "text": "**Hello, World!**",_13+ "textPosition": "RIGHT"_13+ }_13+ }_13}
Depois de executar o vtex link, seu rich-text deve ficar assim: