Я пишу компонент, который получает данные через prop
, изменяет эти данные, а затем $emit
возвращает их родителю (после его изменения, поэтому он также находится в watched
).
Может ли prop
быть реактивным? Или, в качестве альтернативы, как назначить опору реактивному свойству?
Я пытался избежать этого вопроса:
- имеющий
props: ["receiveddata"]
- определение реактивного свойства в
data
(скажем, hello: ''
)
- в
mounted()
убедитесь, что this.hello = this.receiveddata
Я ожидал, что в этот момент this.hello
будет нести контент, введенный receiveddata
реквизитом, и с этого момента работать над this.hello
(то есть: изменить его, посмотреть и $emit
, когда это уместно) )
Однако, глядя на значения в DevTools, я вижу, что
this.hello
не определено
this.receiveddata
правильно хранит данные, переданные компоненту
Я заключаю, что когда в mounted()
значения реквизита еще не известны (таким образом, undefined
из this.receiveddata
), это undefined
присваивается this.hello, а затем this.receiveddata
получает заселено (но для меня уже слишком поздно).
Другими словами, я подключил this.hello = this.receiveddata
в неправильном месте, но я не знаю, куда он мог пойти в другом месте (я также пытался изменить mounted()
на created()
)