首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Angularjs :在第二次或更多的页面访问之后,查看不刷新

Angularjs :在第二次或更多的页面访问之后,查看不刷新
EN

Stack Overflow用户
提问于 2015-10-20 11:51:04
回答 1查看 75关注 0票数 0

我对安古拉杰和咖啡残渣很陌生,我有一个问题要提神。

这是一种情况:

我有两种类型的网页:

  1. 混合车辆清单。在这个页面上,我有“添加到四轮车”和“添加到两轮车”的选项。
  2. 第二页包含两个表1.双轮车2.四轮车

现在,在登录到应用程序后,我首先访问第1页,选择一辆车来添加到四轮车,然后转到第2页,然后选择我最近发现的四轮车选项卡,但现在如果我再次进入第1页,->选择4轮车,然后在第2页的4轮车选项卡上签入,我就找不到那个项目了。

当我签入控制台时,我在API返回的数据中找到了新的项,但在视图中缺少。因此,我的结论是,这种观点并不令人耳目一新。那么,每次访问此页面时,我如何刷新视图呢?

我想我得把$scope.$apply()放进去。但我不知道该在哪里使用这个?

代码:

国家档案:

代码语言:javascript
复制
angular.module('states.vehicles', [])
  .config ($stateProvider) ->
    $stateProvider
      .state "app.vehicles",
        url:         "/vehicles/:itemType"
        views: {
          app: {
            controller:  'VehiclesCtrl'
            templateUrl: "templates/vehicles/vehicles.jade"
          }
        }
        abstract:            true
        data:
          isRoot:            true
          showBannerAd:      true
          tabs:
            twowheeler:
              name: 'Twowheeler'
              direction: 'app.vehicles.items({itemType: "twowheeler"})'
              id: 'twowheeler'
              icon: 'icon-twowheeler'
            fourwheeler:
              name: 'Fourwheeler'
              direction: 'app.vehicles.items({itemType: "fourwheeler"})'
              id: 'fourwheeler'
              icon: 'icon-fourwheeler'

      .state 'app.vehicles.items',
        url:         ''
        views: {
          tabs: {
            templateUrl: 'templates/vehicles/vehicles.items.jade'
            controller:  'vehiclesItemsCtrl'
          }
        }
        resolve:
          items: ($stateParams, Vehicle) ->
            offset = $stateParams.queryOffset || 0
            Vehicle.query
              type:   $stateParams.itemType
              count:  10
              offset: offset
        data:
          isTab: true
          loadingTransition: true

控制器文件:

代码语言:javascript
复制
class VehiclesItemsCtrl extends BaseCtrl
  @register 'VehiclesItemsCtrl'

  @inject '$scope', '$state', '$stateParams', 'Vehicle'

  initialize: ->
    @$scope.itemType = @$stateParams.itemType
    @$scope.items    = []
    @$scope.query    = @_vehicleQuery

  # Private

  _vehicleQuery: =>
    @$stateParams.queryOffset = @$scope.items.length
    @$state.current.resolve.items(@$stateParams, @Vehicle)

查看文件:

代码语言:javascript
复制
ion-view(title='Vehicles')
  ion-content.v-offset-nav
    section(ng-switch='itemType')
      div(ng-switch-when='twowheeler')
        section(ng-repeat="twowheeler in items", ui-sref='app.twowheeler({twowheelerId: twowheeler.twowheeler_id})')
          a.row.list-item.list-colors
            h3 {{twowheeler.name}}
      div(ng-switch-when='fourwheeler')
        section(ng-repeat="fourwheeler in items", ui-sref='app.fourwheeler({fourwheelerId: fourwheeler.fourwheeler_id})')
          a.row.list-item.list-colors
            h3 {{fourwheeler.name}}
      nfinite-scroll(items='items', query='query')

请让我知道我要换什么?

EN

回答 1

Stack Overflow用户

发布于 2015-10-22 04:27:28

代码语言:javascript
复制
ion-view(cache-view="false", title='Vehicles')

我在离子视图标签中添加了cache-view="false",它的工作原理非常完美。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33235904

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档