В <template> есть два элемента, когда я создаю новый проект Vue3, и мое предупреждение VScode

В &lt;template&gt; есть два элемента, когда я создаю новый проект Vue3, и мое предупреждение VScode

Ребята, я перехожу с vue2 на vue3. Насколько я знаю, в vue2 нельзя поставить более одного элемента в <template></template>

Но когда я создаю новый проект Vue3, вы можете увидеть код на этой картинке. Это сделал автор. Можно ли поместить два элемента в <template></template> в vue3?

Если это так, почему мой VScode предупреждает о четвертой строке?

Какова фактическая ошибка, если вы наведете на нее курсор? Или открыть вкладку problems (внизу слева)?

kissu 06.05.2022 05:43

Э... терминал ничего не сказал, просто красная линия под ним, обычно я знаю, что это сообщение об ошибке синтаксиса

ConstFiv 06.05.2022 05:46

Не в выводе терминала. Наведите на него курсор или проверьте вкладку проблем (palette: >Problems: Focus on problems View).

kissu 06.05.2022 05:47
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
3
38
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Происхождение проблемы в большинстве случаев: Vetur

Я часто вижу эту проблему в последнее время. Решение всегда было одним и тем же: удалите Vetur и установите вместо него Volar, это новое рекомендуемое расширение для Vue 3.

Как видите, Vue 3 больше не требует одного корневого узла для компонентов, поэтому у вас есть какое-то расширение, которое его не обнаруживает. У Vetur были проблемы с адаптацией к Vue 3. Возможно, у вас есть версия, настроенная для Vue 2. В любом случае, я рекомендую вам Volar.

Если у вас проблема с eslint или другим линтерном

Найдите это конкретное правило плагина vue в конфигурационном файле .eslintrc или package.json:

rules: { 
    ...,
    "vue/no-multiple-template-root": "off" 
}

В чем ошибка то?

kissu 06.05.2022 05:46

@kissu Возможно, это версия Vetur для Vue 2, и она плохо определяет сегментацию (для многокорневых элементов)

Alexander Vega 06.05.2022 05:47

Хорошо, я никогда не сталкивался с этой проблемой, пока все еще выполняю оба проекта для всех своих проектов Vue2 + 3. Может зависит от конфигурации.

kissu 06.05.2022 05:48

Лучше исправить, чем просто игнорировать ИМО.

kissu 06.05.2022 06:11

@kissu Я согласен. Вероятно, это проблема конфигурации. В любом случае я бы не рекомендовал иметь дело с прекращенными расширениями.

Alexander Vega 06.05.2022 06:15

Хм, я не уверен, что Vetur можно назвать снятым с производства. Есть еще кое-что, что нужно выяснить/исправить относительно Volar. Я пока не совсем в него влюблен, вероятно, скоро появится, но Vetur по-прежнему полностью жизнеспособн, особенно если смотреть на все проекты, все еще использующие Vue2.

kissu 06.05.2022 06:18

@kissu Ты прав, я выбрал не те слова. Снят с производства — не то слово, если на нем все еще есть активные разработчики. Он просто перестал быть официально рекомендованным.

Alexander Vega 06.05.2022 06:27

Другие вопросы по теме