Ember 使用 coffescipt 导出/导入含义
Ember export / import meaning with coffescipt
我们有:
# app/components/my-component.coffee
`import Ember from 'ember'`
MyComponent = Ember.Component.extend
tagName: 'div'
`export default MyComponent`
但在纯 js 中它将是
import Ember from 'ember';
export default Ember.Component.extend({
tagName: 'div'
});
这 import/export 是关于什么的? MyComponent
的命名是否与文件相同,或者我可以使用任何命名的 var 代替它?如果我这样命名,我是否需要使用 import MyComponent
?
之所以这样,是因为 coffeescript 没有 es6 中 import
和 export
语句的语法。
在ember-cli
中每个文件都是一个es6模块。因此,您在模块中声明的任何变量都只会存在于那里。按照惯例,ember 应用程序中导出的组件的名称将是 MyComponent
,因为文件名是 my-component.js
但在您的文件中,您也可以为该变量指定一个完全不同的名称。
如果您将此文件导入其他地方,您可以随意命名它,如下所示:
import Bananas from `components\my-component.js`
Bananas
现在将包含 default
从 my-component.js
导出的内容
我们有:
# app/components/my-component.coffee
`import Ember from 'ember'`
MyComponent = Ember.Component.extend
tagName: 'div'
`export default MyComponent`
但在纯 js 中它将是
import Ember from 'ember';
export default Ember.Component.extend({
tagName: 'div'
});
这 import/export 是关于什么的? MyComponent
的命名是否与文件相同,或者我可以使用任何命名的 var 代替它?如果我这样命名,我是否需要使用 import MyComponent
?
之所以这样,是因为 coffeescript 没有 es6 中 import
和 export
语句的语法。
在ember-cli
中每个文件都是一个es6模块。因此,您在模块中声明的任何变量都只会存在于那里。按照惯例,ember 应用程序中导出的组件的名称将是 MyComponent
,因为文件名是 my-component.js
但在您的文件中,您也可以为该变量指定一个完全不同的名称。
如果您将此文件导入其他地方,您可以随意命名它,如下所示:
import Bananas from `components\my-component.js`
Bananas
现在将包含 default
从 my-component.js