我在文件中有这两个import语句:
import Data from 'component/Data.js';
import Data from 'actions/Data.js';
Run Code Online (Sandbox Code Playgroud)
两个文件都包含一个名为的类Data.
我该如何指定哪个是哪个?我该如何避免姓名冲突?
Cod*_*gue 100
据推测component/Data,actions/Data两者都有默认出口而不是命名出口?像这样:
export default class Data {}
Run Code Online (Sandbox Code Playgroud)
如果是这种情况,那么导入器可以随意调用变量:
import Data1 from 'component/Data.js';
import Data2 from 'actions/Data.js';
Run Code Online (Sandbox Code Playgroud)
如果它们被命名为exports:
export class Data {}
Run Code Online (Sandbox Code Playgroud)
然后,您需要使用大括号as来指定源名称和目标名称:
import { Data as Data1 } from 'component/Data.js';
import { Data as Data2 } from 'actions/Data.js';
Run Code Online (Sandbox Code Playgroud)
编辑:根据 RGraham 的回答,更新我的回答:
你不能像这样导入它:
import {Data as D1} from 'component/Data.js';
import {Data as D2} from 'actions/Data.js';
Run Code Online (Sandbox Code Playgroud)
然后根据需要使用它:
D1.{}
D2.{}
Run Code Online (Sandbox Code Playgroud)
引用自:https : //github.com/lukehoban/es6features/blob/master/README.md/#user-content-modules
| 归档时间: |
|
| 查看次数: |
20677 次 |
| 最近记录: |