Export more than one variable in ES6?

后端 未结 5 657
面向向阳花
面向向阳花 2020-12-25 12:41

I\'m trying to export more than one variable in ES6:

exports.js

var TestObject = Parse.Object.extend(\'TestObject\')
var Post = Parse.Object.extend(\         


        
相关标签:
5条回答
  • 2020-12-25 12:58

    If it fits your use case you can make the non-default export a property of your default export. I find it makes for cleaner code.

    const TestObject = Parse.Object.extend('TestObject');
    TestObject.Post = Parse.Object.extend('Post');
    
    export default TestObject;
    

    Then, when importing you only need to import the default:

    import TestObject from './your-file.js';
    

    Then, you use it like so:

    TestObject.Post({some, args});
    
    0 讨论(0)
  • 2020-12-25 13:06

    In order to export multiple variables we have to take everything we want to export from a file inside { } like this -

    export { <var 1>, <var 2> , <var 3>, ... , <var n>};
    

    for default export we can separately write this-

    export default <var name>;  // there can be only one deafault export; 
    

    In you code you can make the following changes -

    exports.js

    export { Post };
    

    main.js

    import { Post } from '<exports file>';
    

    example

    0 讨论(0)
  • 2020-12-25 13:07

    You can export multiple objects like this in ES6

    var TestObject = Parse.Object.extend('TestObject')
    var Post = Parse.Object.extend('Post')
    
    export {
        TestObject,
        Post
    }
    

    Then, when importing you do it like this:

    import { TestObject, Post } from './your-file';
    

    You can read all about import and export here.

    0 讨论(0)
  • 2020-12-25 13:15

    export default export {}

    the name by which you are exporting must be same while importing.

    You can also use * while importing .

    0 讨论(0)
  • 2020-12-25 13:18

    That is not valid syntax. You can do

    export {Post}
    

    or even just

    export var Post = Parse.Object.extend('Post')
    

    or shorten the whole file to

    export default Parse.Object.extend('TestObject')
    export var Post = Parse.Object.extend('Post')
    

    Your imports are also incorrect, you'll want to do

    import TestObject, {Post} from '../store'
    

    This is if you really want a single default export and a separate named export. You can also just make two named exports and have no default if you want, e.g.

    export var TestObject = Parse.Object.extend('TestObject'),
        Post = Parse.Object.extend('Post')
    

    and

    import {TestObject, Post} from '../store'
    
    0 讨论(0)
提交回复
热议问题