Javascript 角度ng显示未显示右div
我试着制作一个单页应用程序,当你点击一个项目时,你会看到一个包含详细信息的页面 现在,当您第一次单击项目时,它确实会显示详细信息并关闭概述。即使当你们点击“后退”按钮,它也会关闭详细信息并再次打开概览。但是你不能再回到细节上来了。我做错了什么 这是我的沙发Javascript 角度ng显示未显示右div,javascript,html,angularjs,Javascript,Html,Angularjs,我试着制作一个单页应用程序,当你点击一个项目时,你会看到一个包含详细信息的页面 现在,当您第一次单击项目时,它确实会显示详细信息并关闭概述。即使当你们点击“后退”按钮,它也会关闭详细信息并再次打开概览。但是你不能再回到细节上来了。我做错了什么 这是我的沙发 <div class="col-xs-12 alertSidebar"> <div class="omgevingsalertOverview" ng-show="activeWindow=='overview'
<div class="col-xs-12 alertSidebar">
<div class="omgevingsalertOverview" ng-show="activeWindow=='overview'">
>>> LIST OF ITEMS
</div>
<div class="alertDetail" ng-show="activeWindow=='detail'">
<button ng-click="activeWindow = 'overview'">Ga terug</button>
</div>
</div>
单击Google地图中的项目或标记时,将调用showFeatureDetails函数
更新
当我在showFeatureDetails中执行console.log($scope.activeWindow)
时,它首先打印出概述,而不是我返回到details时,它打印详细信息。当我返回到overview时,它仍然打印详细信息。那么它就好像点击按钮不会影响范围
更新2
现在可以了。我所做的是,在我的控制器中,我更改了单击按钮以调用名为showOverview的函数。在这里,我正在更改activeWindow
完整代码:
<div class="col-xs-12 alertSidebar">
<div class="omgevingsalertOverview" ng-show="activeWindow=='overview'">
>>> LIST OF ITEMS
</div>
<div class="alertDetail" ng-show="activeWindow=='detail'">
<button ng-click="showOverview()">Ga terug</button>
</div>
</div>
您在哪里调用了UI中的函数
showFeatureDetails
“在谷歌地图中,当您单击一个标记时,它会运行showFeatureDetails函数。听起来,showFeatureDetails
函数在您打开一次详细信息窗格后不会再次运行。您可以通过在函数内的控制台上记录任何内容来检查这一点吗?确实如此,因为当我执行console.log(featureId)时,我会获得功能ID。请查看我的更新问题,因为您是从第三方API(如google maps)调用函数,$scope.$apply()
将发挥作用<代码>函数showFeatureDetails(featureId){$scope.featureId=featureId;$scope.activeWindow=“detail”;$scope.apply()}可以这样做您在谷歌地图中的UIN中调用函数showFeatureDetails
,当您单击标记时,它会运行showFeatureDetails功能,这听起来像是在您打开一次详细信息窗格后,showFeatureDetails
功能将不会再次运行。您可以通过在函数内的控制台上记录任何内容来检查这一点吗?确实如此,因为当我执行console.log(featureId)时,我会获得功能ID。请查看我的更新问题,因为您是从第三方API(如google maps)调用函数,$scope.$apply()
将发挥作用<代码>函数showFeatureDetails(featureId){$scope.featureId=featureId;$scope.activeWindow=“detail”;$scope.$apply()}可以这样做
<div class="col-xs-12 alertSidebar">
<div class="omgevingsalertOverview" ng-show="activeWindow=='overview'">
>>> LIST OF ITEMS
</div>
<div class="alertDetail" ng-show="activeWindow=='detail'">
<button ng-click="showOverview()">Ga terug</button>
</div>
</div>
function showFeatureDetails(featureId){
$scope.featureId = featureId;
$scope.activeWindow = "detail";
$scope.$apply()
}
$scope.showOverview = function(){
$scope.activeWindow = "overview";
}