You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/guide/teleport.md
+20-20Lines changed: 20 additions & 20 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,10 +1,10 @@
1
1
# Teleporte
2
2
3
-
<divclass="vueschool"><ahref="https://vueschool.io/lessons/vue-3-teleport?friend=vuejs"target="_blank"rel="sponsored noopener"title="Learn how to use teleport with Vue School">Aprenda como usar o teleporte em uma aula grátis do Vue School</a></div>
3
+
<divclass="vueschool"><ahref="https://vueschool.io/lessons/vue-3-teleport?friend=vuejs"target="_blank"rel="sponsored noopener"title="Aprenda a usar o teleport com Vue School">Aprenda como usar o teleporte em uma aula grátis do Vue School</a></div>
4
4
5
-
O Vue nos encoraja a construir nossas interfaces de usuário (UIs) encapsulando a UI e seu respectivo comportamento em componentes. Podemos aninhar componentes dentro de outros componentes e montar uma árvore que constitui a UI da aplicação.
5
+
O Vue nos encoraja à construir nossas interfaces de usuário (UIs) encapsulando a UI e seu respectivo comportamento em componentes. Podemos aninhar componentes dentro de outros componentes e montar uma árvore que constitui a UI da aplicação.
6
6
7
-
Entretanto, algumas vezes, uma parte do _template_ do componente pertence a esse componente de forma lógica, enquanto do ponto de vista técnico, seria preferível mover essa parte do _template_ para outro lugar no DOM, fora da aplicação Vue.
7
+
Entretanto, algumas vezes uma parte do _template_ do componente pertence à esse componente de forma lógica, enquanto do ponto de vista técnico, seria preferível mover essa parte do _template_ para outro lugar no DOM, fora da aplicação Vue.
8
8
9
9
Um cenário comum para isso é a criação de um componente que inclui um _modal_ em tela cheia. Na maioria dos casos, você gostaria que a lógica do modal residisse dentro do componente, mas o posicionamento do modal se torna difícil de resolver por meio de CSS ou requer uma mudança na composição do componente.
10
10
@@ -13,7 +13,7 @@ Considere a seguinte estrutura HTML.
Ao usar esse componente dentro da estrutura HTML inicial, podemos ver um problema - o modal está sendo renderizado dentro de uma `div` profundamente aninhada e a `position: absolute` do modal toma como referência a `div` pai posicionada relativamente.
55
55
56
-
O teleporte fornece uma maneira limpa para nos permitir controlar sob que elemento pai no DOM nós queremos que uma parte do HTML seja rederizada, sem ter que recorrer ao estado global ou dividí-lo em dois componentes.
56
+
O Teleporte fornece uma maneira limpa para nos permitir controlar sob que elemento pai no DOM nós queremos que uma parte do HTML seja rederizada, sem ter que recorrer ao estado global ou dividí-lo em dois componentes.
57
57
58
-
Vamos modificar nosso `modal-button` para usar o `<teleport>` e dizer ao Vue "**teleporte** esse HTML **para** a _tag_"**body**"".
58
+
Vamos modificar nosso `modal-button` para usar o `<teleport>` e dizer ao Vue que "**teleporte** esse HTML **para** a _tag_'**body**'".
59
59
60
60
```js
61
61
app.component('modal-button', {
62
62
template:`
63
63
<button @click="modalOpen = true">
64
-
Open full screen modal! (With teleport!)
64
+
Abrir modal de tela cheia! (Com Teleporte!)
65
65
</button>
66
66
67
67
<teleport to="body">
68
68
<div v-if="modalOpen" class="modal">
69
69
<div>
70
-
I'm a teleported modal!
71
-
(My parent is "body")
70
+
Eu sou um modal teleportado!
71
+
(Meu pai é o "body")
72
72
<button @click="modalOpen = false">
73
-
Close
73
+
Fechar
74
74
</button>
75
75
</div>
76
76
</div>
@@ -93,21 +93,21 @@ Como resultado, uma vez que clicamos no botão para abrir o modal, o Vue irá re
Neste caso, mesmo quando o `child-component` é renderizado em um lugar diferente, permanecerá com um filho do `parent-component` e receberá a propriedade `name` dele.
125
+
Neste caso, mesmo quando o `child-component` é renderizado em um lugar diferente, permanecerá como filho do `parent-component` e receberá a propriedade `name` dele.
126
126
127
127
Isso também significa que injeções vindas do componente pai funcionam como o esperado, e que o componente filho será aninhado embaixo do componente pai no _Vue Devtools_, em vez de ser colocado no lugar para o qual o conteúdo foi movido.
128
128
129
-
## Usando múltiplos teleportes no mesmo alvo
129
+
## Usando Múltiplos Teleportes no Mesmo Alvo
130
130
131
-
Um cenário de caso de uso comum pode ser um componente `<Modal>` reutilizável, do qual pode haver várias instâncias ativas ao mesmo tempo. Para esse tipo de cenário, múltiplos componentes `<teleport>` podem montar seus respectivos conteúdos no mesmo elemento alvo. A ordem será simplemente anexá-los - as montagens mais antigas serão localizadas depois das primeiras montagens realizadas no elemento alvo.
131
+
Um cenário de caso de uso comum pode ser um componente `<Modal>` reutilizável, do qual pode haver várias instâncias ativas ao mesmo tempo. Para esse tipo de cenário, múltiplos componentes `<teleport>` podem montar seus respectivos conteúdos no mesmo elemento alvo. A ordem será simplemente anexá-los - as montagens novas serão localizadas depois das primeiras montagens realizadas no elemento alvo.
0 commit comments