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/migration/introduction.md
+54-53Lines changed: 54 additions & 53 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,114 +1,115 @@
1
1
# Introdução
2
2
3
-
::: info
4
-
Novo em Vue.js? Veja nosso [Guia Essencial](/guide/introduction.html) para começar.
3
+
::: info
4
+
Novo no Vue.js? Veja nosso [Guia Essencial](/guide/introduction.html) para começar.
5
5
:::
6
6
7
-
Este guia é sobretudo para usuários com experiência prévia em Vue 2 que desejam aprender sobre os novos recursos e mudanças do Vue 3. **Este não é um artigo que você precise ler detalhadamente antes de experimentar o Vue 3.** Embora pareça que muita coisa mudou, muito do que você conhece e ama no Vue ainda é o mesmo; mas queríamos ser o mais completos possível fornecendo explicações detalhadas e exemplos para cada alteração documentada.
7
+
Este guia é sobretudo para usuários com experiência prévia em Vue 2 que desejam aprender sobre os novos recursos e mudanças do Vue 3. **Este não é um artigo que você precise ler do começo ao fim antes de experimentar o Vue 3.** Embora pareça que muita coisa mudou, muito do que você conhece e ama no Vue ainda é o mesmo; mas queríamos ser tão minuciosos quanto possível fornecendo explicações detalhadas e exemplos para cada alteração documentada.
-[API de Composição](/guide/composition-api-introduction.html)
45
45
-[Teleporte](/guide/teleport.html)
46
46
-[Fragmentos](/guide/migration/fragments.html)
47
-
-[Opções para _emit_ entre componentes](/guide/component-custom-events.html)
47
+
-[Opções para emitir eventos de componentes](/guide/component-custom-events.html)
48
48
-[API `createRenderer` de `@vue/runtime-core`](https://github.com/vuejs/vue-next/tree/master/packages/runtime-core) para criar renderizações custumizadas
49
-
-[Síntaxe _Sugar_ para CSF que utilizem _Composition_API (`<script setup>`)](https://github.com/vuejs/rfcs/blob/sfc-improvements/active-rfcs/0000-sfc-script-setup.md) <Badgetext="experimental"type="warning" />
50
-
-[Variáveis CSS baseadas em estado (`<style vars>`)](https://github.com/vuejs/rfcs/blob/sfc-improvements/active-rfcs/0000-sfc-style-variables.md) <Badgetext="experimental"type="warning" />
51
-
-[`<style scoped>`em CSF agora podem incluir regras globais ou regras que visam apenas conteúdo de _slots_](https://github.com/vuejs/rfcs/blob/master/active-rfcs/0023-scoped-styles-changes.md)
49
+
-[Açúcar sintático para SFC que utilizem API de Composição (`<script setup>`)](https://github.com/vuejs/rfcs/blob/sfc-improvements/active-rfcs/0000-sfc-script-setup.md) <Badgetext="experimental"type="warning" />
50
+
-[Variáveis CSS baseadas em estado de SFC (`<style vars>`)](https://github.com/vuejs/rfcs/blob/sfc-improvements/active-rfcs/0000-sfc-style-variables.md) <Badgetext="experimental"type="warning" />
51
+
-[`<style scoped>`de SFC agora pode incluir regras globais ou regras que visam apenas conteúdo de _slot_](https://github.com/vuejs/rfcs/blob/master/active-rfcs/0023-scoped-styles-changes.md)
52
52
53
53
## Incompatibilidades
54
54
55
-
::: info INFO
56
-
Ainda estamos trabalhando na migração dedicada do Vue 3 com comportamento compatível com o Vue 2 e avisos de tempo de execução de uso incompatível. Se você está planejando migrar um aplicativo Vue 2 mais complexo, é altamente recomendável aguardar a Distribuição de Migração para uma experiência mais tranquila.
55
+
::: info
56
+
Ainda estamos trabalhando em uma versão dedicada de migração do Vue 3 com comportamento compatível com o Vue 2 e avisos em tempo de execução de uso incompatível. Se você está planejando migrar um aplicativo Vue 2 mais complexo, é altamente recomendável aguardar a Distribuição de Migração para uma experiência mais tranquila.
57
57
:::
58
58
59
-
A seguir, uma lista de mudanças incompatíveis com 2.x:
59
+
A seguir, uma lista de mudanças incompatíveis com v2.x:
60
60
61
-
### Global API
61
+
### API Global
62
62
63
-
-[API Global de Vue agora utiliza uma instância da aplicação](/guide/migration/global-api.html)
64
-
-[API Global e internas foram reestruturadas para _tree-shakable_](/guide/migration/global-api-treeshaking.html)
63
+
-[API Global do Vue agora utiliza uma instância da aplicação](/guide/migration/global-api.html)
64
+
-[API Global e internas foram reestruturadas para serem _tree-shakable_](/guide/migration/global-api-treeshaking.html)
65
65
66
-
### Diretivas do template
66
+
### Diretivas de _Template_
67
67
68
-
-[O uso de `v-model` em componentes foi remodelado](/guide/migration/v-model.html)
69
-
-[O atributo `key` em `<template v-for>` e nós não `v-for` foi alterado](/guide/migration/key-attribute.html)
68
+
-[O uso de `v-model` em componentes foi retrabalhado](/guide/migration/v-model.html)
69
+
-[O atributo `key` em `<template v-for>` e nós que não sejam`v-for` foi alterado](/guide/migration/key-attribute.html)
70
70
-[A precedência de `v-if` e `v-for` quando usados no mesmo elemento foi modificada](/guide/migration/v-if-v-for.html)
71
-
-[`v-bind="object"`é agora sensível à ordem de disposição](/guide/migration/v-bind.html)
71
+
-[`v-bind="object"` agora é sensível à ordem de disposição](/guide/migration/v-bind.html)
72
72
-[`ref` em `v-for` não resulta mais em um array de refs](/guide/migration/array-refs.html)
73
73
74
74
### Componentes
75
75
76
76
-[Componentes funcionais só podem ser criados usando uma função simples](/guide/migration/functional-components.html)
77
-
-[Os atributos`functional`em um Componentes Single File (CSF), `<template>`e a opção componente `functional` estão obsoletas](/guide/migration/functional-components.html)
77
+
-[O atributo`functional`no `<template>` de Componentes Single File (CSF)e a opção de componente `functional` estão obsoletas](/guide/migration/functional-components.html)
78
78
-[Componentes assíncronos necessitam de um método `defineAsyncComponent` para serem criados](/guide/migration/async-components.html)
79
79
80
80
### Funções de Renderização
81
81
82
-
-[A função de renderização da API foi modificada](/guide/migration/render-function-api.html)
82
+
-[A API da função de renderização foi modificada](/guide/migration/render-function-api.html)
83
83
-[A propriedade `$scopedSlots` foi removida e todos os seus _slots_ passam a ser obtidos como funções através de `$slots`](/guide/migration/slots-unification.html)
84
84
85
-
### Elementos personalizados
86
-
-[A lista de elementos custumizados agora são executados durante a compilação do _template_](/guide/migration/custom-elements-interop.html)
85
+
### Elementos Personalizados
86
+
87
+
-[A lista de permissões para elementos personalizados agora é realizada durante a compilação do _template_](/guide/migration/custom-elements-interop.html)
87
88
-[A propriedade especial `is` está restrita apenas à _tag_`<component>`](/guide/migration/custom-elements-interop.html#customized-built-in-elements)
88
89
89
-
### Outras mudanças menores
90
+
### Outras Mudanças Menores
90
91
91
92
- A opção de ciclo de vida `destroyed` foi renomeada para `unmounted`
92
93
- A opção de ciclo de vida `beforeDestroy` foi renomeada para `beforeUnmount`
93
-
-[A propriedade `default` da função construtora não acessa mais o contexto `this`](/guide/migration/props-default-this.html)
94
-
-[A API de diretivas costumizadas foi modificada para se alinhar ao ciclo de vida do componente](/guide/migration/custom-directives.html)
94
+
-[A função fabricadora de props `default` não acessa mais o contexto `this`](/guide/migration/props-default-this.html)
95
+
-[A API de diretivas customizadas foi modificada para se alinhar ao ciclo de vida do componente](/guide/migration/custom-directives.html)
95
96
-[A opção `data` deverá sempre ser declarada como uma função](/guide/migration/data-option.html)
96
-
-[A opção `data`de mixins is now merged shallowly](/guide/migration/data-option.html#mixin-merge-behavior-change)
97
+
-[A opção `data`dos _mixins_ agora é mesclada superficialmente](/guide/migration/data-option.html#mixin-merge-behavior-change)
97
98
-[Estratégia de coerção de atributos foi alterada](/guide/migration/attribute-coercion.html)
98
99
-[Algumas classes de transição foram renomeadas](/guide/migration/transition.html)
99
-
-[O `callback` de um `array` que está sendo observado só será acionado quando este for substituído. Caso você precise chama-lo dentro de uma `mutattion`, a opção `deep` deve ser especificada.](/guide/migration/watch.html)
100
-
- As tags `<template>` sem diretivas especiais (`v-if/else-if/else`, `v-for`, ou `v-slot`) agora são tratadas como elementos simples resultando em um elemento `<template>` nativo ao invez de renderizar seu conteúdo interno.
101
-
- No Vue 2.x, o _container_ raiz da aplicação `outerHTML` é substituído pelo _template_ do componente raiz (ou eventualmente compilado em um _template_, se o componente raiz não dispuser da opção _template_/renderização). Vue 3.x agora usa o _conteiner_ da aplicação `innerHTML` ao invés - isto é, o próprio container não é mais considerado parte do _template_.
100
+
-[O `callback` de um `array` que está sendo observado só será acionado quando este for substituído. Caso você precise dispará-lo em mutação, a opção `deep` deve ser especificada.](/guide/migration/watch.html)
101
+
- As tags `<template>` sem diretivas especiais (`v-if/else-if/else`, `v-for`, ou `v-slot`) agora são tratadas como elementos simples resultando em um elemento `<template>` nativo ao invés de renderizar seu conteúdo interno.
102
+
- No Vue 2.x, o contêiner raiz `outerHTML`da aplicação é substituído pelo _template_ do componente raiz (ou eventualmente compilado em um _template_, se o componente raiz não dispuser da opção _template_/_render_). Vue 3.x agora usa o contêiner `innerHTML`da aplicação ao invés disso - isto é, o próprio contêiner não é mais considerado parte do _template_.
102
103
103
-
### APIs removidas
104
+
### APIs Removidas
104
105
105
-
-[Suporte `keyCode` como modificadores `v-on`](/guide/migration/keycode-modifiers.html)
106
-
-[Instância dos métodos $on, $off e \$once](/guide/migration/events-api.html)
106
+
-[Suporte a `keyCode` como modificadores `v-on`](/guide/migration/keycode-modifiers.html)
107
+
-[Métodos de instância $on, $off e \$once](/guide/migration/events-api.html)
-Método de instância`$destroy`. Os usuários não devem mais acessar manualmente o ciclo de vida de componentes indiviuais Vue.
110
111
111
-
## Bibliotecas suportadas
112
+
## Bibliotecas Suportadas
112
113
113
114
Todas as nossas bibliotecas e ferramentas oficiais agora oferecem suporte ao Vue 3, mas, a maioria delas ainda está em _status_ beta e distribuídas sob a _tag_`next` no NPM. **Estamos planejando estabilizar e mudar todos os projetos para usar a tag `latest` até o final de 2020.**
114
115
@@ -125,7 +126,7 @@ A partir da v4.5.0, `vue-cli` agora oferece opção integrada para escolher a pr
Vue Router 4.0 provê suporte ao Vue 3, possuindo uma série de modificações relevantes próprias. Leia o [README](https://github.com/vuejs/vue-router-next#vue-router-next-) para verificar todos os detalhes.
129
+
Vue Router 4.0 provê suporte ao Vue 3 e possui uma série de modificações incompatíveis próprias. Leia o [README](https://github.com/vuejs/vue-router-next#vue-router-next-) para verificar todos os detalhes.
Vuex 4.0 provê suporte ao Vue 3 com basicamente a mesma API que o 3.x. A única modificação importante é em [como o plugin é instalado](https://github.com/vuejs/vuex/tree/4.0#breaking-changes).
138
+
Vuex 4.0 provê suporte ao Vue 3 com basicamente a mesma API que o 3.x. A única modificação incompatível é em [como o plugin é instalado](https://github.com/vuejs/vuex/tree/4.0#breaking-changes).
138
139
139
140
-[GitHub](https://github.com/vuejs/vuex/tree/4.0)
140
141
141
-
### Extensão para desenvolvedores
142
+
### Extensão para Desenvolvedores
142
143
143
-
Estamos trabalhando em uma nova versão do _Devtools_ com uma nova IU e refatoração interna para oferecer suporte a várias versões do Vue. A nova versão está atualmente em beta e suporta apenas Vue 3 (por enquanto). A integração do Vuex e do Router também está em andamento.
144
+
Estamos trabalhando em uma nova versão do _Devtools_ com uma nova interface e refatoração interna para oferecer suporte a várias versões do Vue. A nova versão está atualmente em beta e suporta apenas Vue 3 (por enquanto). A integração do Vuex e do Router também está em andamento.
144
145
145
146
- Para navegador Chrome: [Instale da Chrome web store](https://chrome.google.com/webstore/detail/vuejs-devtools/ljjemllljcmogpfapbkkighbhhppjdbg?hl=en)
146
147
147
148
- Nota: o canal beta pode entrar em conflito com a versão estável do _devtools_, então pode ser necessário desabilitar temporariamente a versão estável para que a versão beta funcione corretamente.
148
149
149
150
- Para navegador Firefox: [Baixe a extensão assinada](https://github.com/vuejs/vue-devtools/releases/tag/v6.0.0-beta.2) (Arquivo `.xpi` em Assets)
150
151
151
-
### Suporte IDE
152
+
### Suporte de IDE
152
153
153
-
É recomendado o uso do [VSCode](https://code.visualstudio.com/) com a extensão oficial [Vetur](https://marketplace.visualstudio.com/items?itemName=octref.vetur), a qual provê suporte à IDE para Vue 3.
154
+
É recomendado o uso do [VSCode](https://code.visualstudio.com/) com a extensão oficial [Vetur](https://marketplace.visualstudio.com/items?itemName=octref.vetur), qual provê suporte à IDE para Vue 3.
0 commit comments