2015-06-04 5 views
1

Я пытаюсь добавить некоторые кнопки в MapViewer GeoNetwork 3. К сожалению, я новичок в AngularJS, на котором написан GN3. Так что я сделал редактирование html-шаблона, который использует директива 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 на моем сервере. Но новая кнопка не будет отображаться. Кроме того, изменение комментария «Лучшие правые кнопки» на что-то другое не внесет никаких изменений в отображаемую MapView-страницу. Даже перезапуск сервера ничего не изменит.

Может ли кто-нибудь объяснить мне, почему AngularJS так реагирует? Есть идеи?

+0

Вы уверены, что редактируете правильный шаблон? Ваш подход выглядит нормально. – dcardoso

+0

Насколько я могу судить - Да. Это единственный шаблон, который содержит кнопки, показанные в этом представлении. К сожалению, этот шаблон не загружается, когда я просматриваю запросы в консоли разработчика Chrome. В любом случае эти кнопки отображаются так, чтобы их нужно было загружать где-то - верно? – Antivist

+1

Что я нашел - это файл с именем gn_search_default.js, который использует $ templateCache.put ('../../ catalog/components/viewer/partials/mainviewer.html', [.. html elements ..]; Я думаю, что так загружается шаблон html, но мои изменения не отражаются в этих [html-элементах], которые ставятся. – Antivist

ответ

Смежные вопросы