0
我是新的angularjs和coffeescript.I在刷新视图有一个问题。Angularjs:查看第二次和更多访问页面后不刷新
这是情景:
我有两种类型的网页:混合车辆
- 列表中列出。在这个页面上,我可以选择“添加到fourwheeler”和“添加到twowheeler”。
- 第二页包含两个选项卡1. Twowheeler 2. Fourwheeler
现在登录到应用程序后第一次我参观第1页,选择一个车辆加入fourwheeler然后转到第2页,选择fourwheeler标签,我发现最近增加了车辆,但现在如果我再次进入第1页 - >选择四轮车的车辆并检查第2页fourwheeler标签,然后我没有找到该项目。
当我检查控制台时,我发现API中的数据返回的新项目,但在视图中丢失。所以我认为这个观点并不令人耳目一新。那么,我每次访问此页面时如何刷新视图?
我想我必须把$ scope。$ apply()。但我不知道我应该在哪里使用这个?
代码:
国家文件:
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
Controller文件:
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)
查看文件:
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')
请让我知道我必须要查NGE?
使用角度2并忘记$ scope。$ apply() –