我正在开始一个新的vue.js项目,因此我使用vue-cli工具来脚手架生成一个新的webpack项目(即vue init webpack
)。
当我浏览生成的文件时,我注意到在src/router/index.js
文件中导入了以下内容:
import Vue from 'vue'
import Router from 'vue-router'
import Hello from '@/components/Hello' // <- this one is what my qusestion is about
Vue.use(Router)
export default new Router({
routes: [
{
path: '/',
name: 'Hello',
component: Hello
}
]
})
我以前没有在路径中看到过 @ 符号。我猜它允许使用相对路径(也许?),但我想确认一下它的确切作用。
我尝试在网上搜索,但没有找到解释(可能是因为搜索“@符号”或使用文字字符 @
作为搜索条件不起作用)。
这个路径中的 @
是什么意思(最好有链接说明),这是 ES6 的东西吗?Webpack 的东西?Vue-loader 的东西?
更新
感谢 Felix Kling 指向了另一个关于同样问题的重复 stackoverflow 问题/答案。
虽然其他 stackoverflow 帖子上的评论不是这个问题的确切答案(在我的情况下它不是 babel 插件),但它确实指导我找到了正确的方向。
在 vue-cli 创建的脚手架中,基本的 webpack 配置设置了一个别名用于 .vue 文件:
这有道理,因为它给出了源文件的相对路径,并且它取消了导入路径结尾需要的 .vue
的要求。
感谢您的帮助!