如何在 <ons-back-button> 单击时刷新上一页

how to refresh previous page on <ons-back-button> click

你好,我正在和 angularjs 一起开发温泉 ui 并制作了一个演示应用程序,其中包括 google 地图,一切都在顺利进行,但在测试后我发现了一个问题在 ons-back-button 上,请查看案例,我有 page1,其中包含 google 地图,当页面第一次加载时地图完全加载正常,但是当我导航到 page2 和 returns 返回时从 page1使用 (ons-back-button) 到第 1 页,我的地图坏了,从未加载过。我已经浪费了我 3 天的时间来解决这个问题,没有运气,任何人都可以帮助我如何解决它,我的代码是: html

<div class="mapclass">
                <ons-row class="app-map">   
                    <ons-col> 
                        <map zoom="11" center="[{{lat}}, {{lng}}]" 
                             draggable: false >
                            <info-window id="marker-info" >
                                <div class="mpopup-wrap" style="padding: 0; width: 250px;">
                                    <div class="mpopup-box">
                                        <strong class="title">{{ infoWindow.title}}</strong>
                                        <img src="{{mapimg}}" style="float: left; width: 80px; height: 53px; margin-right: 5px;" />
                                        <span class="info">
                                            <i class="fa fa-map-marker"></i>
                                            {{infoWindow.loc}}
                                        </span>
                                        <span class="info">
                                            <i class="fa fa-home"></i>
                                            {{infoWindow.content}}
                                        </span>
                                    </div>
                                </div>
                            </info-window>
                            <marker ng-repeat="(id, marker) in markers" id="{{ id}}" 
                                    position="[{{lat}}, {{lng}}]"
                                    title= "hello"
                                    visible="true"
                                    on-click="showMarker(event, $index)" >
                            </marker>
                        </map>
                    </ons-col>
                </ons-row>
            </div>

我认为这个线程可能与您的问题密切相关。我不熟悉温泉,但无论如何你想做的是控制某些控制器的行为,并且使用 UI-route-provider,你可以设法控制页面是否在开关上重新加载。

看第一个回答here

尝试使用 prepop 或 postpop 来执行或重新加载 goole 映射。

Onsen docs (prepop, postpop)