我开始一个新的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
}
]
})
我以前从未在路径中见过@符号。我怀疑它允许相对路径(也许?),但我想确保我理解它真正的功能。
我试着在网上搜索,但没有找到解释(可能是因为搜索“at”或使用文字字符@作为搜索条件没有帮助)。
@在这个路径中做了什么(链接到文档会很棒),这是es6的事情吗?webpack的东西?vue-loader之类的东西?
更新
感谢Felix Kling为我指出了关于这个问题的另一个重复的stackoverflow问题/答案。
虽然另一篇stackoverflow帖子上的评论并不是这个问题的确切答案(在我的情况下,它不是一个巴别塔插件),但它确实为我指明了正确的方向,让我找到了它是什么。
在vue-cli为你构建的脚手架中,基本webpack配置的一部分为.vue文件设置了别名:
这是有意义的,因为它为您提供了src文件的相对路径,并在导入路径的末尾删除了.vue的要求(通常需要)。
谢谢你的帮助!