Làm cách nào tôi có thể bí danh nhập mặc định trong Javascript?


382

Sử dụng các mô-đun ES6, tôi biết tôi có thể đặt bí danh cho một lần nhập có tên

import { foo as bar } from 'my-module';

Và tôi biết tôi có thể nhập một nhập mặc định

import defaultMember from 'my-module';

Tôi muốn đặt bí danh cho một lần nhập mặc định và tôi đã nghĩ những điều sau đây sẽ hoạt động

import defaultMember as alias from 'my-module';

nhưng điều đó dẫn đến một lỗi phân tích cú pháp (cú pháp).

Làm cách nào tôi có thể (hoặc tôi có thể?) Bí danh nhập mặc định?

Câu trả lời:


725

defaultMemberđã một bí danh - nó không cần phải là tên của hàm / điều được xuất. Cứ làm đi

import alias from 'my-module';

Ngoài ra, bạn có thể làm

import {default as alias} from 'my-module';

nhưng đó là khá bí truyền.


12
Bí danh của chính nó là bí truyền! Nhập xuất khẩu được đặt tên mặc định là tiện dụng khi kiểm tra các thành phần redux:import WrappedComponent, { Component } from 'my-module';
ptim

Một số quy tắc tslinting rất nghiêm ngặt không đồng ý và thực sự muốn bạn giữ tên của đầu vào mặc định làm tên tệp
phil294

1
@Blauhirn Có phải các IDE cũ không thể theo dõi các tham chiếu và cần sử dụng tìm kiếm và thay thế toàn cầu cho các công cụ tái cấu trúc của chúng không? Nực cười.
Bergi

@Bergi không, đó là quy tắc tslint "tên nhập khẩu", được sử dụng, ví dụ như bộ quy tắc tslint airbnb và do đó khá phổ biến. Các quy tắc này tồn tại để khuyến khích mã nhất quán, không có lỗi và có thể đọc được
phil294

2
Các tài liệu MDN sẽ phản ánh các cập nhật tài liệu này: developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/
Kẻ
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.