Tôi đang bắt đầu một dự án vue.js mới vì vậy tôi đã sử dụng công cụ vue-cli để dàn dựng một dự án webpack mới (tức là vue init webpack
).
Khi tôi đang xem qua các tệp được tạo, tôi nhận thấy các lần nhập sau trong src/router/index.js
tệp:
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
}
]
})
Tôi chưa thấy dấu hiệu ( @
) trong một đường dẫn trước đây. Tôi nghi ngờ nó cho phép các đường dẫn tương đối (có thể?) Nhưng tôi muốn chắc chắn rằng tôi hiểu những gì nó thực sự làm.
Tôi đã thử tìm kiếm trên mạng nhưng không thể tìm thấy lời giải thích (thăm dò vì tìm kiếm "tại dấu hiệu" hoặc sử dụng ký tự chữ @
không giúp làm tiêu chí tìm kiếm).
Những gì @
làm trong đường dẫn này (liên kết đến tài liệu sẽ là tuyệt vời) và đây có phải là một điều es6? Một điều webpack? Một điều vue-loader?
CẬP NHẬT
Cảm ơn Felix Kling đã chỉ cho tôi một câu hỏi / câu trả lời stackoverflow trùng lặp khác về cùng câu hỏi này.
Mặc dù bình luận trên bài đăng stackoverflow khác không phải là câu trả lời chính xác cho câu hỏi này (nó không phải là một plugin babel trong trường hợp của tôi), nó đã chỉ cho tôi đi đúng hướng để tìm ra nó là gì.
Trong giàn giáo mà vue-cli tạo ra cho bạn, một phần của cấu hình webpack cơ sở thiết lập một bí danh cho các tệp .vue:
Điều này có ý nghĩa cả trong thực tế là nó cung cấp cho bạn một đường dẫn tương đối từ tệp src và nó loại bỏ yêu cầu .vue
ở cuối đường dẫn nhập (mà bạn thường cần).
Cảm ơn đã giúp đỡ!