ale*_*nco 25 javascript ecmascript-6 vue.js
我试图在ES6中导出多个变量:
exports.js
var TestObject = Parse.Object.extend('TestObject')
var Post = Parse.Object.extend('Post')
export default TestObject
export Post
Run Code Online (Sandbox Code Playgroud)
main.js:
import TestObject from '../store'
import Post from '../store'
var testObject = new TestObject() // use Post in the same way
testObject.save(json).then(object => {
console.log('yay! it worked', object)
})
Run Code Online (Sandbox Code Playgroud)
我知道只有一个默认值,所以我只default在第一个项目中使用.
但是,我收到此错误消息:
Module build failed: SyntaxError: /home/alex/node/my-project/src/store/index.js: Unexpected token (9:7)
7 |
8 | export default TestObject
> 9 | export Post
Run Code Online (Sandbox Code Playgroud)
也许我做错了吗?
log*_*yth 50
这不是有效的语法.你可以做
export {Post}
Run Code Online (Sandbox Code Playgroud)
甚至只是
export var Post = Parse.Object.extend('Post')
Run Code Online (Sandbox Code Playgroud)
或者将整个文件缩短为
export default Parse.Object.extend('TestObject')
export var Post = Parse.Object.extend('Post')
Run Code Online (Sandbox Code Playgroud)
你的进口也是不正确的,你想做的
import TestObject, {Post} from '../store'
Run Code Online (Sandbox Code Playgroud)
如果您确实需要单个默认导出和单独的命名导出.如果需要,您也可以只创建两个命名导出并且没有默认值,例如
export var TestObject = Parse.Object.extend('TestObject'),
Post = Parse.Object.extend('Post')
Run Code Online (Sandbox Code Playgroud)
和
import {TestObject, Post} from '../store'
Run Code Online (Sandbox Code Playgroud)
Mar*_*cke 28
您可以在ES6中导出这样的多个对象
var TestObject = Parse.Object.extend('TestObject')
var Post = Parse.Object.extend('Post')
export {
TestObject,
Post
}
Run Code Online (Sandbox Code Playgroud)
然后,在导入时你这样做:
import { TestObject, Post } from './your-file';
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
41001 次 |
| 最近记录: |