我正在做一个测试应用程序,这都是es6 ...而且我在使用这个插件时遇到了麻烦...文档说使用它来配置插件并且它可以工作:
var getBabelRelayPlugin = require('babel-relay-plugin');
var schemaData = require('../data/schema.json').data;
module.exports = getBabelRelayPlugin(schemaData, {
abortOnError: true
});
谁能告诉我为什么这种语法不起作用?
"use strict";
import getBabelRelayPlugin from 'babel-relay-plugin';
import schemaData from '../data/schema.json';
export default getBabelRelayPlugin(schemaData.data, {
abortOnError: true
});
感谢
答案 0 :(得分:0)
在第一种情况下,要使用标准CommonJS require
导入插件,您可以写:
var myBabelRelayPlugin = require('./myBabelRelayPlugin.js');
但是在ES6案例中如果你的模块是由Babel 6 编译的,你必须在最后添加.default
:
var myBabelRelayPlugin = require('./myBabelRelayPlugin.js').default;
很可能Babel在加载插件时不会尝试添加.default
,因此无法正确加载插件的ES6版本。