AngularJs - stateProvider在页面刷新时重新加载控制器

时间:2017-10-05 12:03:28

标签: javascript asp.net angularjs angular-ui-router

我有一个链接到不同页面和不同控制器的状态,如下所示:

.state('productEdit', {
                url: '/productEdit/:id',
                templateUrl: '/App/Main/views/products/editProduct.cshtml',
                controller: 'app.views.products.editProduct',
                controllerAs: 'vm'
            })

问题是,当我转到此页面或刷新链接页面时,控制器不会再次初始化,因此即使我清理缓存,变量也会卡住#34; / p>

我这样使用ui-sref:

          <div ng-repeat="product in vm.products" class="col-lg-4 col-md-4 col-sm-4 col-xs-4" >
                <a ui-sref="productEdit({id: product.id})">
                    <div style="padding:5px">
                        <div class="card-product">
                            <h4>
                                {{product.name}}
                            </h4>
                            <p>
                                {{product.description}}
                            </p>
                        </div>

                    </div>
                </a>
             </div>

任何人都知道如何在每次到达页面时重新加载控制器?

1 个答案:

答案 0 :(得分:1)

我想你使用ui-router,根据文档你可以将可选配置传递给ui-sref,在你的情况下应该类似于

<a ui-sref="productEdit({id: product.id})"  ui-sref-opts="{reload: true}">
                    <div style="padding:5px">
                        <div class="card-product">
                            <h4>
                                {{product.name}}
                            </h4>
                            <p>
                                {{product.description}}
                            </p>
                        </div>

                    </div>
                </a>