在试图创建使用requirejs模块的聚合物元素时,我遇到了阻塞issue。据我所知,聚合物不适用于requirejs,但暂时这是我唯一的选择。使用聚合物和requirejs
寻找答案,我发现两个解决方案:
- 不要使用requirejs,使您的模块与HTML进口兼容。
- 将
Polymer()
呼叫requirejs回调中所描述的here
因为我必须使用需要,至少暂时,我去解决二号。但是,事实证明该解决方案会导致元素注册异步延迟,并导致incorrect data binding prior to Polymer upgrading the element。
深入研究这个问题,我开始黑客入侵未记录的Polymer内部组件,意图完全停止Polymer,直到requirejs完成它的事情。这是我想出了:
Polymer.require = function(tag, deps, func) {
var stopper = {}
Polymer.queue.wait(stopper);
require(deps, function() {
delete stopper.__queue;
Polymer.queue.check();
Polymer(tag, func.apply(this, arguments));
});
};
我知道这是非常错误的。有更好的解决方案吗?
这留下了什么问题,你在哪里调用'require.config',看到这个类似的[线程](http://stackoverflow.com/questions/28673242/manual-bootstrap-in-polymer) – Renaud 2015-02-23 11:59:54