如何在Javascript中为默认导入添加别名?


381

使用ES6模块,我知道我可以为命名导入别名

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

我知道我可以导入默认导入

import defaultMember from 'my-module';

我想为默认导入添加别名,我以为以下内容可以工作

import defaultMember as alias from 'my-module';

但这会导致解析(语法)错误。

我如何(或可以?)为默认导入添加别名?

Answers:


724

defaultMember已经别名-不必是导出函数/事物的名称。做就是了

import alias from 'my-module';

或者你可以做

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

但这太深奥了。


12
别名本身就是深奥的!在测试redux组件时,导入命名的导出默认值很方便:import WrappedComponent, { Component } from 'my-module';
ptim

一些非常严格的tslinting规则不同意,实际上是希望您保留默认输入的名称作为文件名
phil294

1
@Blauhirn是否适用于不能遵循引用并需要使用全局搜索和替换为其重构工具的旧IDE?荒谬。
Bergi

@Bergi不,这是tslint规则“ import-name”,例如,由airbnb tslint规则集使用,因此相当普遍。这些规则的存在是为了鼓励一致,无错误和易读的代码
phil294

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.