0

我正在尝试将 Openlayers 3 中的地图放入 Dojo 提供的堆栈容器中。但显然在调整主(浏览器)窗口大小之前没有显示地图。

Javascript 控制台上没有明显的错误。

我做了一个jsfiddle:http: //jsfiddle.net/q989r/

如果我以相同的方式创建地图但没有所有 Dojo 的东西,它就可以工作。我还尝试DIV#mapDIV#center2D.

我发现了这个类似的问题:Dojo stackContainer is not display children until window resize但是在这些答案中,他们的建议是基于 ContentPane 是以编程方式创建的事实,而这里不是这种情况。反正一个

dijit.byId('view2d').startup()

也不是

dijit.byId('view2d').resize()

没有帮助。

那么我可能错过了什么?这是为了工作,对吧?

4

1 回答 1

0

似乎有一些奇怪的逻辑(可能是错误)与不可见的 Dojo 容器(此提示来自 Dojo IRC @neekfenwick):

改变Applicationstack.forward()andcreateMap()调用的顺序就可以了。你可以在这里找到一个更新和工作的小提琴:http: //jsfiddle.net/q989r/1/

于 2014-05-22T08:51:16.350 回答