导出的 const 变量在 vue 中未定义
exported const variable is undefined in vue
我正在为一个项目使用@vue/cli,但我终究无法弄清楚为什么我导出的变量不起作用。这是我的代码设置:
[App.vue]
import {somevar} from './main.js'
console.log(somevar)
[main.js]
import { createApp } from 'vue'
import App from './App.vue'
const somevar = "example"
export {somevar}
createApp(App).mount('#app')
当我 运行 npm 运行 serve 时,somevar 在浏览器中返回为未定义控制台…?
我已经尝试使用 vanilla 设置(不是在 vue 中)来做到这一点并且它有效,所以我假设它是 vue 特有的东西?
我不认为在 App.vue 中导入 main.js 是可能的,它本身在 main.js 中导入(循环依赖)。
我尝试重新设置您的设置,结果在浏览器控制台中出现 Uncaught ReferenceError: Cannot access 'App' before initialization
(我有一个基于 vite 2 和 vue 3 的项目)。
我建议将常量提取到另一个 javascript 文件中,例如 example.js,然后将其导入 App.vue(如果需要,还可以导入 main.js)。
以下设置适合我。
[App.vue]
<script setup>
import { somevar } from './example.js'
console.log(somevar)
</script>
[main.js]
import { createApp } from 'vue'
import App from './App.vue'
createApp(App).mount('#app')
[example.js]
const somevar = "example"
export {somevar}
我正在为一个项目使用@vue/cli,但我终究无法弄清楚为什么我导出的变量不起作用。这是我的代码设置:
[App.vue]
import {somevar} from './main.js'
console.log(somevar)
[main.js]
import { createApp } from 'vue'
import App from './App.vue'
const somevar = "example"
export {somevar}
createApp(App).mount('#app')
当我 运行 npm 运行 serve 时,somevar 在浏览器中返回为未定义控制台…?
我已经尝试使用 vanilla 设置(不是在 vue 中)来做到这一点并且它有效,所以我假设它是 vue 特有的东西?
我不认为在 App.vue 中导入 main.js 是可能的,它本身在 main.js 中导入(循环依赖)。
我尝试重新设置您的设置,结果在浏览器控制台中出现 Uncaught ReferenceError: Cannot access 'App' before initialization
(我有一个基于 vite 2 和 vue 3 的项目)。
我建议将常量提取到另一个 javascript 文件中,例如 example.js,然后将其导入 App.vue(如果需要,还可以导入 main.js)。
以下设置适合我。
[App.vue]
<script setup>
import { somevar } from './example.js'
console.log(somevar)
</script>
[main.js]
import { createApp } from 'vue'
import App from './App.vue'
createApp(App).mount('#app')
[example.js]
const somevar = "example"
export {somevar}