String helpers
A seguir está a lista de auxiliares de string disponíveis que você pode usar em seus modelos do Edge. O núcleo do framework e os pacotes oficiais do AdonisJS já estão usando esses auxiliares, só que também os injetamos como auxiliares de visualização.
camelCase
Converte uma string para sua versão camelCase.
{{ camelCase('hello-world') }}
<!-- Output: helloWorld -->snakeCase
Converte uma string para sua versão snake_case.
{{ snakeCase('helloWorld') }}
<!-- Output: hello_world -->dashCase
Converte uma string para sua versão dash-case. Opcionalmente, você também pode colocar a primeira letra de cada segmento em maiúscula.
{{ string.dashCase('helloWorld') }} <!-- hello-world -->
{{
string.dashCase('helloWorld', { capitalize: true })
}} <!-- Hello-World -->pascalCase
Converte uma string para sua versão PascalCase.
{{ pascalCase('helloWorld') }}
<!-- Output: HelloWorld -->capitalCase
Coloca um valor de string em maiúsculas.
{{ capitalCase('helloWorld') }}
<!-- Output: Hello World -->sentenceCase
Converte string para maiúsculas e minúsculas.
{{ sentenceCase('hello-world') }}
<!-- Output: Hello world -->dotCase
Converte string para sua versão dot.case.
{{ dotCase('hello-world') }}
<!-- Output: hello.world -->noCase
Remove todos os tipos de maiúsculas e minúsculas de uma string.
{{ noCase('hello-world') }} <!-- hello world -->
{{ noCase('hello_world') }} <!-- hello world -->
{{ noCase('helloWorld') }} <!-- hello world -->titleCase
Converte uma frase para maiúsculas e minúsculas.
{{ titleCase('Here is a fox') }}
<!-- Output: Here Is a fox -->pluralize
Pluraliza uma palavra.
{{ pluralize('box') }} <!-- boxes -->
{{ pluralize('i') }} <!-- we -->toSentence
Junte uma matriz de palavras com um separador para formar uma frase.
{{
toSentence([
'route',
'middleware',
'controller'
])
}}
<!-- route, middleware, and controller -->Você também pode definir as seguintes opções para personalizar os separadores.
separator: O valor entre duas palavras, exceto a última.pairSeparator: O valor entre a primeira e a última palavra. Usado somente quando há duas palavras.lastSeparator: O valor entre a segunda última e a última palavra. Usado somente quando há mais de duas palavras.
{{
toSentence([
'route',
'middleware',
'controller'
], {
separator: '/ ',
lastSeparator: '/or '
})
}}
<!-- route/ middleware/or controller -->prettyBytes
Converte o valor de bytes em uma string legível por humanos. Aceita e encaminha todas as opções para o pacote bytes.
{{ prettyBytes(1024) }} <!-- 1KB -->
{{
prettyBytes(1024, { unitSeparator: ' ' })
}} <!-- 1 KB -->toBytes
Converte uma string legível para humanos em bytes. Este método é o oposto do método prettyBytes.
{{ toBytes('1KB') }} <!-- 1024 -->prettyMs
Converte o tempo representado em milissegundos para uma string legível para humanos.
{{ prettyMs(60000) }} <!-- 1min -->
{{ prettyMs(60000, { long: true }) }} <!-- 1 minute -->toMs
Converte uma string legível para humanos em milissegundos. Este método é o oposto do método prettyMs.
{{ toMs('1min') }} <!-- 60000 -->ordinalize
Ordinalize uma string ou um valor numérico.
{{ ordinalize(1) }} <!-- 1st -->
{{ ordinalize(99) }} <!-- 99th -->nl2br
Converte os caracteres de nova linha com uma tag <br>.
{{{ nl2br(post.content) }}}Ao usar o auxiliar nl2br, você terá que usar três chaves para renderizar a tag <br> como HTML em vez de escapá-la.
No entanto, isso também renderizará as tags HTML da variável post.content. Para superar essa situação, recomendamos que você escape separadamente a entrada do usuário antes de passá-la para o método nl2br.
:::note A seguir está a maneira correta de usar o método nl2br. Isso garante que a entrada do usuário seja sempre escapada. :::
{{{ nl2br(e(post.content)) }}}e
Escape HTML dentro de um valor de string. As chaves duplas já escapam o valor, então use este método somente quando não estiver usando as chaves duplas.
{{{ e(post.content) }}}