やりたいこと
vueCLIを使用した際にコンポーネント内で、外部JSファイル定義した関数や変数を読み込みたいです。
ディレクトリ構成
vueApp/ ├─src/ | ├─components/ | ├─static/ | | └─js/ | | └─common.js | | | ├─App.vue | └─main.js | └─vue.config.js
現状のソースコード
vue
1// App.vue 2<template> 3 <button @click='test'>test</button> 4</template> 5 6<script> 7export default { 8 data: () => { 9 10 }, 11 methods: { 12 test () { 13 // common.js内のメソッドを読み込み 14 commonTest() 15 } 16 } 17}
javascript
1// common.js 2function commonTest() { 3 console.log('commonOK') 4}
試したこと
以下の内容を試してみました。
main.js内でcommon.jsの読み込み
以下のように、importもしくは、requireで読み込んでみたのですが、commonTest()はundefinedになってしまいました。
javascript
1// main.js 2import common from '@/static/js/common' // importのパターン 3require('@/static/js/common') // requireのパターン 4 5new Vue ({ 6 common, 7 render: h => h(App) 8}).$mount('#app')
コンポーネント内で直接読み込み
以下のように、コンポーネント内で直接importしてみたのですが、結果は同じでした。
vue
1// App.vue(※一部省略) 2<script> 3 import common from '@/static/js/common' 4 export default { 5 deta: () => { 6 7 }, 8 methods: { 9 commonTest() 10 } 11 } 12</script>
以上、拙い文章で恐縮ですがどなたかご教授頂けると幸いです。
回答1件
あなたの回答
tips
プレビュー