Я пытаюсь перенести пользовательскую директиву Vue 1.x на Vue 2.x и нигде не могу найти, как снова получить мои выражения в виде литерала. Скажем, этот пример - моя настраиваемая директива:
<div v-custom="file.txt"></div>
В Vue1
Vue.directive('custom', function () {
console.log(this.expression)
})
вернет файл "file.txt" в виде строки.
В Vue2
Vue.directive('custom', {
bind: function (el, binding) {
console.log(binding.expression)
}
})
вернусь
[Предупреждение Vue]: свойство или метод «файл» не определены в экземпляре, но на них ссылаются во время рендеринга. Обязательно объявите реактивные свойства данных в параметре данных
а также
[Предупреждение Vue]: Ошибка в функции рендеринга: «TypeError: невозможно прочитать свойство 'txt' of undefined»
Это означает, что мое выражение в Vue2 больше не является строкой, а является переменной. Как мне заставить его вернуть строку сейчас?