¿Es posible vincular datos a una función en Vue?
En la plantilla tengo algo como: <title> {{nameofFunction()}}</title>
Cuando lo ejecuto, solo dice función nativa en la página.
Gracias.
También existe una " propiedad calculada " en Vue, diseñada para hacer exactamente esto:
<template> <div id="example"> <p>Original message: "{{ message }}"</p> <p>Computed reversed message: "{{ reversedMessage }}"</p> </div> </template> <script> export default { data:() => ({ message: 'Hello' }), computed: { // a computed getter reversedMessage: function () { // `this` points to the vm instance return this.message.split('').reverse().join('') } } } </script>
sí tu puedes. ¿Podría compartir cómo está definiendo sus opciones de datos?
Aquí tengo un ejemplo que funciona tanto en Vue2 como en Vue3
<template> <div id="app"> <h1>{{messageHelloFn()}}</h1> </div> </template> <script> export default { data() { return { messageHelloFn: (name = 'Lucas') => { return `Hello ${name}` } }; } }; </script>
Ejemplo en vivo: https://codepen.io/LucasFer/pen/abywRMW
a.js
const func = (str) => str export default fn
<template> <div id="app"> <div v-for="item in items"> {{ getTime(item) }} </div> <div> {{ fn('a') }} </div> <div> {{ func('b') }} </div> </div> </template> <script> import func from './a.js' export default { data () { return { items: ['123123', '456456'], fn: (str) => str } }, methods: { getTime (v) { return v + '123' } } }; </script>