在指令中使用openlayers-directive

时间:2016-06-03 14:08:02

标签: angularjs angularjs-directive openlayers

我正在尝试在指令中使用openlayers-directive:

var app = angular.module("demoapp", ["openlayers-directive"]);
app.directive('myDir', function () {
return {
      restrict: "E",
      replace: true,
      template: "<openlayers ol-center='center' height='480px' width='640px'></openlayers>"
  }
})

在html中:

<my-dir></my-dir>

但是当我这样做时,我有一个多方向错误

VM2731 angular.js:12221 Error: [$compile:multidir] Multiple directives [myDir, openlayers] asking for template on: <openlayers ol-center="center" height="480px" width="640px">

任何解释都是有用的

谢谢!

以下是fiddle

1 个答案:

答案 0 :(得分:1)

您的指令模板应该有自己的根<div>,其中将放置open-layers指令。这样,您就可以定义一个单独的模板,在该模板中可以编译嵌套指令。

template: "<div><openlayers ol-center='center' height='480px' width='640px'></openlayers></div>"