我正在尝试向 GeoNetwork 3 MapViewer 添加一些按钮。不幸的是,我是编写 GN3 的 AngularJS 的新手。所以我所做的是编辑 'gnMainViewer' 指令正在使用的 html 模板。
ViewerDirectve.js:
module.directive('gnMainViewer', [
'gnMap',
function(gnMap) {
return {
restrict: 'A',
replace: true,
scope: true,
templateUrl: '../../catalog/components/viewer/' +
'partials/mainviewer.html',
[...]
}]);
在此模板中,我可以找到 MapView 中显示的按钮。
mainviewer.html:
<div class="wrapper" data-ng-controller="gnViewerController">
<div data-gn-alert-manager=""></div>
<div id="map" ngeo-map="map" class="map"></div>
<div gn-gfi="" map="map"></div>
<div gn-localisation-input map="map"></div>
<!--Top right buttons - Tools-->
<div class="tools tools-right" gi-btn-group gnv-close-panel data-ng-controller="toolsController">
<button class="btn btn-default" ng-model="activeTools.addLayers" type="submit"
rel="#addLayers" gi-btn gnv-tools-btn>
<span class="fa fa-plus"></span>
<span role="tooltip" data-translate="">addLayers</span>
</button>
<button class="btn btn-default" ng-model="activeTools.layers" type="submit"
rel="#layers" gi-btn gnv-tools-btn>
<span class="fa fa-tasks"></span>
<span role="tooltip" data-translate="">Layers</span>
</button>
[...]
</div>
</div>
所以我添加了一个按钮让我们说:
<button class="btn btn-default" ng-model="" type="submit"
rel="#" gi-btn gnv-tools-btn>
<span class="fa fa-beer"></span>
<span role="tooltip">NewButton</span>
</button>
到模板。
然后我保存了我的更改并刷新了我的服务器上的 MapView-Page。但不会显示新按钮。此外,将注释“右上角按钮”更改为其他内容不会对显示的 MapView-Page 进行任何更改。即使重新启动服务器也不会改变任何东西。
有人可以解释一下为什么 AngularJS 会有这样的反应吗?有任何想法吗?