我尝试通过 SystemJS 从他们的 CDN 加载 Cycle DOM,例如:
System.config({
map: {
'cycle-dom': 'https://unpkg.com/@cycle/dom@17.1.0/dist/cycle-dom.js',
'xstream': 'https://cdnjs.cloudflare.com/ajax/libs/xstream/10.3.0/xstream.min.js',
}
});
System.import('cycle-dom', cycleDOM => {
...
});
但我很快就发现了 cycle-dom 的需求xstream
。所以我尝试加载两者:
Promise.all([
System.import('xstream'),
System.import('cycle-dom')
])
.then(([xs, cycleDOM]) => {
...
});
但我仍然得到同样的错误。看起来cycle-dom
预计在首次加载时就xstream
存在。window
所以我尝试了:
System.import('xstream')
.then(xs => window['xstream'] = xs)
.then(() => System.import('cycle-dom'))
.then(cycleDOM => {
...
});
我觉得我对这一切都错了。我怎样才能做到这一点?
更新:
按照下面马丁的建议,我尝试将其配置xstream
为cycle-dom
.
这是一个演示的jsbin。我正在做的是加载循环运行和循环域,然后在循环主页上运行示例。
但我得到了错误:
“TypeError:无法读取未定义的属性‘默认’”
在这种情况下,未定义是cycle-dom
试图加载window['xstream']
,它没有被加载。
谢谢。