Vue: Пустая связанная опора вызывает исключение рендеринга

Созданный на 14 мар. 2017  ·  3Комментарии  ·  Источник: vuejs/vue

Версия Vue.js

2.2.4

Ссылка на воспроизведение

https://jsfiddle.net/wwuyv17z/

Действия по воспроизведению

Ничего не передавайте в привязанную опору, например, в примере: <test :user=""></test>

Что ожидается?

В худшем случае я ожидал предупреждения в консоли и никакого сбоя; в лучшем случае я ожидал бы, что опора передаст компоненту значение null .

Если согласовано, что должно произойти предупреждение или замена нуля, я с радостью попробую запросить это изменение самостоятельно.

Что на самом деле происходит?

Возникает ошибка, похожая на:

[Vue warn]: Failed to generate render function:

SyntaxError: Unexpected token } in

with(this){return _c('div',{attrs:{"id":"app"}},[_c('test',{attrs:{"user":}})],1)}

(found in <Root>)

Все 3 Комментарий

Это ожидаемо. Вы также получите синтаксическую ошибку в JS, если не дадите полю объекта значение.

Спасибо за ответ, Эван.

Я ценю это. Как только вы поймете, что связанные реквизиты в основном являются свойствами javascript.

В таком случае, есть ли у Vue концепция проверки ошибок в режиме разработки? Я только что помог новичку, столкнувшемуся с этой проблемой - думаю, они могли бы решить проблему сами, если бы получили что-то похожее на:

[Vue warn] Bound property 'user' should not be empty on component 'test'

Опять же, рад попытаться добавить это, если вы считаете, что это полезно.

Да, это должно быть возможно, проверив value здесь . Если вы работаете над PR, обязательно включите сопроводительный тестовый пример.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги