iRo*_*tia 6 javascript reactjs
我在 Github 上浏览这个 repo并试图理解代码的工作
在这里,作者(或程序员)在多个地方提到了 import * 所以我试图理解和理解 import * 是如何工作的?
首先在他的 repo 的 Game.js 文件中,他提到/这样写
import * as actions from '../actions';
Run Code Online (Sandbox Code Playgroud)
在 VS Code 中,当我单击'../actionsusing 命令时,它会将我重定向到此文件 -> index.js
然后在 Index.js 他们有这样的东西
import * as ActionTypes from './action-types';
Run Code Online (Sandbox Code Playgroud)
当我点击./action-types它时会将我重定向到这里action-types.js
我浏览了 firefox 文档,但我无法清楚地理解第一个示例,例如,动作文件夹包含多个文件,以及如何从 '../actions' 导入 * 作为动作;平均 index.js 文件
虽然我知道他已经使用actions.functionName()或调用/引用了这些函数ActionType.TypeName
我的首要问题仍然存在
怎么import * as actions from '../actions'; mean index.js归档?
小智 7
该import * as name语法导入 javascript 文件的所有导出内容。
例如,如果您想导入整个模块的内容,则访问该
doAllTheAmazingThings()函数Run Code Online (Sandbox Code Playgroud)import * as myModule from '/modules/my-module.js'; myModule.doAllTheAmazingThings();
来自文档
当您在 import 语句中引用目录时,它会查找并加载该目录中的 index.js 文件。我通常所做的是将类和函数导出到分组对象中的该目录下,以便可以轻松访问它们:
例如,在 index.js 中,我导出如下内容:
{
Class1,
method1
}
Run Code Online (Sandbox Code Playgroud)
其中每个都是这样导入的:
import Class1 from './Class1';
Run Code Online (Sandbox Code Playgroud)
所以他们只是将目录中的文件中的类/方法/...分组。
然后您可以轻松访问它,如下所示:
import { Class1, method1 } from './mymodule';
Run Code Online (Sandbox Code Playgroud)
与
import Class1 from './mymodule/Class1';
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6705 次 |
| 最近记录: |