События ons-splitter на стороне пользовательского интерфейса Onsen не работают
Я пытаюсь получить postopen
а также postclose
события работают, но мне, кажется, не повезло.
Я следую инструкциям здесь:
https://onsen.io/v2/docs/angular1/ons-splitter-side.html
Итак, суть моего кода такова:
<ons-splitter var="mySplitter" ng-controller="SplitterController as splitter">
<ons-splitter-side ons-postopen="ons.notification.alert(1);" side="left" width="220px" collapse swipeable>
<ons-page>
left
</ons-page>
</ons-splitter-side>
<ons-splitter-content page="home.html"></ons-splitter-content>
</ons-splitter>
<ons-template id="home.html">
<ons-page>
<ons-toolbar>
<div class="left">
<ons-toolbar-button ng-click="mySplitter.left.open()">
<ons-icon icon="md-menu"></ons-icon>
</ons-toolbar-button>
</div>
<div class="center">
Main
</div>
</ons-toolbar>
</ons-page>
</ons-template>
Но в результате ничего не происходит, как будто не было ons-postopen
приписывать.
1 ответ
Решение
Хотя у меня нет хорошего ответа о том, как использовать эти события во время инициализации, вы можете получить к ним доступ, используя прослушиватели событий, такие как:
document.getElementById('menu').addEventListener('preopen',function(e){
console.log('preopen event');
});
Это демонстрируется в этом коде ручки: https://codepen.io/anon/pen/rWNvXL?editors=1011