Let’s say that in a VueJS project, I have a HelloWorld.js file like this:
export default { addNumbers: function (a,b) { return a+b; } }
And it’s used from HelloWorld.vue like this:
<template> <div> <h1>{{addNumbers(1,2)}}</h1> </div> </template> <script> import helloWorldJS from './HelloWorld.js' export default { name: 'HelloWorld', methods: { addNumbers: function(a,b) { return helloWorldJS.addNumbers(a,b); } } } </script>
My agony comes from having to ‘duplicate’ the addNumbers function in the methods section of the HelloWorld component.
Is there a simple way to make the external addNumbers function available from the template section?
Advertisement
Answer
you could export as const you function like:
export const addNumbers = (a,b) => a+b;
then at your vue file you could write as:
import { addNumbers } from './HelloWorld.js' export default { name: 'HelloWorld', methods: { addNumbers // this is equal to addNumbers: addNumbers } }