Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将es5 require转换为es6 import_Javascript_Webpack_Ecmascript 6 - Fatal编程技术网

Javascript 如何将es5 require转换为es6 import

Javascript 如何将es5 require转换为es6 import,javascript,webpack,ecmascript-6,Javascript,Webpack,Ecmascript 6,我正在使用webpack和svg url loader将svg文件加载到我的react应用程序中。但重要的是,我想将这个ES5需求转换为ES6导入。以下是要求: require('!!svg-url-loader?noquotes!../images/mustachio.svg') 我提出了这个重要声明: import mustachio from '!!svg-url-loader?noquotes!../images/mustachio.svg' 但是,难道没有更干净的方法来实现这一点吗

我正在使用
webpack
svg url loader
将svg文件加载到我的react应用程序中。但重要的是,我想将这个ES5需求转换为ES6导入。以下是要求:

require('!!svg-url-loader?noquotes!../images/mustachio.svg')
我提出了这个重要声明:

import mustachio from '!!svg-url-loader?noquotes!../images/mustachio.svg'

但是,难道没有更干净的方法来实现这一点吗?

网页包加载器可能就是您想要的。如果没有,别名也可能有帮助

例如:网页包配置中的加载程序配置可能如下所示

装载机:[
{test:/\.css$/,loader:'style loader!css loader'},
{test:/\.less$/,loader:'style loader!css!less'},
{test://\.svg$/,loader:'url?limit=65000&mimetype=image/svg+xml&name=css/[name].[ext]'},
{test://\.woff$/,loader:'url?limit=65000&mimetype=application/font-woff&name=css/[name].[ext]'},
{test:/\.woff2$/,加载程序:'url?limit=65000&mimetype=application/font-woff2&name=css/[name].[ext]'},
{test:/\.[ot]tf$/,loader:'url?limit=65000&mimetype=application/octet-stream&name=css/[name].[ext]'},
{test:/\.eot$/,loader:'url?limit=65000&mimetype=application/vnd.ms fontobject&name=css/[name].[ext]'},
{
测试:/.jsx?$/,,
加载器:“巴别塔加载器”,
排除:/node_模块/,
查询:
{
预设:['es2015'、'react'、'stage-0'],
插件:['transform-runtime','transform decorators legacy']
}
}

]
网页包加载器可能就是您想要的。如果没有,别名也可能有帮助

例如:网页包配置中的加载程序配置可能如下所示

装载机:[
{test:/\.css$/,loader:'style loader!css loader'},
{test:/\.less$/,loader:'style loader!css!less'},
{test://\.svg$/,loader:'url?limit=65000&mimetype=image/svg+xml&name=css/[name].[ext]'},
{test://\.woff$/,loader:'url?limit=65000&mimetype=application/font-woff&name=css/[name].[ext]'},
{test:/\.woff2$/,加载程序:'url?limit=65000&mimetype=application/font-woff2&name=css/[name].[ext]'},
{test:/\.[ot]tf$/,loader:'url?limit=65000&mimetype=application/octet-stream&name=css/[name].[ext]'},
{test:/\.eot$/,loader:'url?limit=65000&mimetype=application/vnd.ms fontobject&name=css/[name].[ext]'},
{
测试:/.jsx?$/,,
加载器:“巴别塔加载器”,
排除:/node_模块/,
查询:
{
预设:['es2015'、'react'、'stage-0'],
插件:['transform-runtime','transform decorators legacy']
}
}

]
您应该使用默认的webpack require


require(“!!svg url加载器?noquotes../images/mustachio.svg”)
您应该使用默认的网页包require


require(“!!svg url加载器?noquotes!”。/images/mustachio.svg”)
你说的“清洁剂”是什么意思?没有比从“xyz”导入abc更干净的导入了。模块字符串的格式由模块加载器决定,而不是由es6导入决定。
mustachio
来自哪里?ES5要求中没有变量,只是它的工作方式。不管怎样,我知道了。你说的清洁剂是什么意思?没有比从“xyz”导入abc更干净的导入了。模块字符串的格式由模块加载器决定,而不是由es6导入决定。
mustachio
来自哪里?ES5要求中没有变量,只是它的工作方式。不管怎样,我知道了。谢谢你!我以前也有过这样的功能,但它不起作用,因为我没有使用
noquotes
选项。我应该删除我的问题吗?谢谢!我以前也有过这样的功能,但它不起作用,因为我没有使用
noquotes
选项。我应该删除我的问题吗?