[英]ES6 imports, exports = Error: invalid argument
我有這個設置
file1.js:
export function foo1() { ... };
file2.js:
export function foo2() { ... }
hook.js:
import {foo1} from './file1';
import {foo2} from './file2';
export {foo1, foo2};
現在,當我想從鈎子中導入時:
app.js
import { foo1 } from '../data/hook.js';
我得到這個:
Error: invalid argument
調用foo1時。 (該函數沒有參數/參數)。
有人知道出什么問題嗎?
更新:
直接從file1導入foo1時,也會得到invalid argument
。 這是通天塔問題嗎?
我的.babelrcb(我使用test作為環境):
"env": {
"targets": {
"node": "4.8.4"
},
"test": {
"presets": ["env"]
},
}
更新和解決方案:
事實證明,導入是正確的,對所有在此問題上幫助過我的人來說都是正確的。問題是由於函數foo1中的Promise導致導入失敗:
browser.waitUntil(..); // see http://webdriver.io/api/utility/waitUntil.html
您必須在導入中添加./
,並在導出中default
export default function foo1()
import {foo1} from './File1'
否則,它將在node_modules中搜索File1
在file1和file2上缺少函數主體。
file1.js:
export function foo1() {};
file2.js:
export function foo2() {};
在hook.js上,您應該導出默認值。
import {foo1} from './file1';
import {foo2} from './file2';
export default {foo1, foo2};
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.