我有一个这样的项目:
root/
webpack-config.js
app/
app.js
js/
dep.js
core/
module.js
Run Code Online (Sandbox Code Playgroud)
这是webpack配置文件:
module.exports = {
entry: './app/app.js',
output: {
path: __dirname,
filename: "[name]-bundle.js"
},
module: {
loaders: [
{ test: /\.js$/, loader: 'babel-loader', exclude: /node_modules/ }
]
},
resolve: {
modulesDirectories: ['core']
}
...
Run Code Online (Sandbox Code Playgroud)
在app.js中,我有:
import local_dep from './js/dep';
import myModule from 'module';
Run Code Online (Sandbox Code Playgroud)
这与webpack 1.x一样正常工作,但是我没有使用webpack 2来解析myModule模块,我得到"找不到模块:无法在...\app中解析模块".
看来modulesDirectories条目被忽略,基本URL对应于条目的文件夹.
如何使用webpack 2正确解析模块?
我试图移植一些我编写的使用systemjs + Babel的ES6代码.
移植大部分代码时没有任何问题.
但是,我有一些代码需要动态加载ES6模块,如下所示:
function load(src) {
System.import(src).then(function() {});
}
Run Code Online (Sandbox Code Playgroud)
src是一个外部ES6模块,它也可能有依赖项(静态导入).
我怎么能把这个代码移植到Webpack?如果我尝试使用require语句,我会收到一个警告,根据Webpack文档,这似乎是正常的.
我正在开发一个 mod 播放器,它是一个使用 webaudio/audioWorkletNode 具有 4 个不同轨道(通道)的音频文件。
我使用 2 通道(立体声)音频节点使其正常工作:
问题是我想分析并显示每个轨道的波形显示(因此应该有 4 个不同的分析器)。
我的想法是创建一个将outputChannelCount 设置为[4] 的audioWorkletNode,将分析器连接到节点的四个通道中的每一个,然后使用channelMerger 将其混合为2 个立体声通道。
所以我使用了以下代码,期望它创建一个具有 4 个通道的节点:
让节点 = new AudioWorkletNode(context, '处理器', { outputChannelCount: [4] });
但outputChannelCount参数似乎被忽略。不管我指定什么,最后都设置为2个通道。
有没有办法以另一种方式进行分析,或者我必须使用自己的分析器自己进行分析?