为什么Javascript/Typescript上有这么多类型的导入/导出
我是服务器端javascript的新手,以前我用过nodejs来做简单的事情,但只使用默认库(我从来都不需要使用为什么Javascript/Typescript上有这么多类型的导入/导出,javascript,node.js,typescript,Javascript,Node.js,Typescript,我是服务器端javascript的新手,以前我用过nodejs来做简单的事情,但只使用默认库(我从来都不需要使用require或import关键字),但最近我学到了/我看到了: import RX = require('reactxp'); const popsicle = require('popsicle'); import LoginPage = require("./LoginPage"); import React, { Component } from 'react'; import
require
或import
关键字),但最近我学到了/我看到了:
import RX = require('reactxp');
const popsicle = require('popsicle');
import LoginPage = require("./LoginPage");
import React, { Component } from 'react';
import { AppRegistry, Text } from 'react-native';
import AppState from './AppState';
进出口:
export default Resources; // Resources is an object
export = LoginPage; // LoginPage is a class
问题是,const require
、import require
和import from
的组合有什么区别?还有什么是export=
它似乎不在屏幕上
这三个是
这是要求的
其余的
import React, { Component } from 'react';
import { AppRegistry, Text } from 'react-native';
import AppState from './AppState';
export default Resources; // Resources is an object
是()
这并不是说你可以比较它们:它们只是针对不同的环境导入/导出。基本上没有区别:-
const
在ES5中是新的。在您必须显式或使用iffy创建它之前
import
在ES6中是新的,它只是require
(依赖于公共js模块)的替代品
导出
也是ES6的一项功能,它允许您在其他文件中使用模块
或对象/var
所以,这只是新的惯例&没有什么。现在默认情况下,在ES6之后使用Javascript
另外,{}
允许您直接公开模块/对象属性,这也是ES6中的新特性。例如:-
让我们在obj.js文件中有一个对象:
export let objj1 = {
a : function () {},
b : function () {},
}
所以基本上有两种方法可以使用它
1.
设obj=require('obj')
a=obj.a或b=obj.b代码>
或
从'obj'导入{a,b}
现在您可以直接访问a&b属性。导出在Mozilla文档中有描述:。@Robertexport=
是一种类型脚本表示法。@Robert Node.js使用模块。exports
或exports
。ES6模块使用导出表达式
(或类似)。但是export=
(注意它不是exports=
)是一种类型脚本符号。
import React, { Component } from 'react';
import { AppRegistry, Text } from 'react-native';
import AppState from './AppState';
export default Resources; // Resources is an object
export let objj1 = {
a : function () {},
b : function () {},
}