我正在启动一个新的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的功能吗?一个网络包?vue-loader的事?
感谢Felix Kling指出另一个重复的stackoverflow问题/关于这个问题的答案。
虽然另一个stackoverflow帖子上的评论不是这个问题的确切答案(在我的例子中它不是一个babel插件),但它确实给我指明了正确的方向,以找到它是什么。
这是有意义的,因为它为您提供了来自src文件的相对路径,并且消除了导入路径末尾的.vue
的要求(您通常需要)。
谢谢你的帮助!
这是通过Webpackresolve.alias
配置选项完成的,并不特定于VUE。
在Vue Webpack模板中,Webpack被配置为将@/
替换为src
路径:
const path = require('path');
...
resolve: {
extensions: ['.js', '.vue', '.json'],
alias: {
...
'@': path.resolve('src'),
}
},
...
别名用作:
import '@/<path inside src folder>';
问题内容: 我正在尝试使用相对路径来定位Java类中的可执行文件,而不是有效的硬编码行,但是使用类似以下内容的方法: 失败…在Java中使用相对路径的正确方法是什么? 问题答案: 最可能的解释是您当前的目录不在您认为的位置。您可以检查user.dir的系统属性以查看应用程序的基本路径是什么,或者可以执行以下操作: 在使用该相对路径调试相对引用的起始位置之前。
问题内容: 仅选择目录,如何使用JFileChooser获取目录的绝对路径? 问题答案: 用: 和…一起: 然后调用返回的对象。
我正在使用webpack将一些boostrap和其他css文件捆绑在一起,下面是webpack.config.js文件var htmlWebPack=require('html-webpack-plugin');var ExtractTextPlugin=require(“extract-text-webpack-plugin”); 我引用了main.ts文件中的引导文件夹,如下所示 但是当我运行
我有一个带有javascript的html页面,我想在其中自动登录用户。我有以下代码: 在键斗篷服务器上,我添加了网络起源'*'。我得到以下错误: 邮递http://localhost:8180/auth/realms/Myrealm/protocol/openid-连接/令牌400(错误请求) 我不知道为什么它不起作用。当我使用终端时,它工作正常: (钥匙斗篷版本4.8.3) 我得到以下回应:
问题内容: 这有效: 但这不是: 我越来越: 是否可以(和/或如何)使用“动态”路径?(不对路径进行硬编码或依靠相对路径)。 问题答案: 不,这是不可能的。ES6模块需要能够静态解析其依赖关系,而无需执行模块代码,以便语句能够可靠地工作。模块说明符必须是字符串文字。 但是,您选择的模块加载器应支持使用变量名动态加载模块。但是,您将无法在模块范围中获得绑定标识符(并且无法重新导出它),通常只能在回调
问题内容: 因此,这是我当前通过ES6导入Webpack中的图像和图标的工作流程: 这变得很快。这就是我想要的: 我觉得必须有某种方法可以动态地从特定目录中导入所有文件(不带扩展名),然后根据需要使用这些文件。 任何人都看过此事,或者对最佳解决方案有任何想法? 更新: 使用选择的答案,我能够做到这一点: 问题答案: 我觉得必须有某种方法可以动态地从特定目录中导入所有文件(不带扩展名),然后根据需要