2017-10-05 21 views
0

が、私はこのように、別のページにリンク状態と異なるコントローラを持っている場合、コントローラをリロードするstateProvider:AngularJs - ページの更新

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

私は、このページに移動するか、リフレッシュしたときに問題がありますコントローラは再び初期化されないので、キャッシュをクリーンアップしても、変数は「スタック」します。

私は、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> 

?私はあなたがあなたのケースでは、UI-SREFにオプションの設定を渡すことができマニュアルに従って、あなたはUI-ルータを使用すると仮定し

答えて

1

<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> 
+0

のようになります。私も、リロード、これを試してみました:trueオプションを。これらの作品はありません。 $ state.transitionTo($ state.current、$ stateParams、{ リロード:真、 継承:偽、 が通知:投票 ダウンさえ で試してみました – WilsonPena

+0

は、このソリューションは、AngularJSのV.1.2.2で動作 を受け入れtrue }); ?明らかにコントローラからのみ可能です – Ruslan

+0

私は試してもまだ動作しませんでした。このように:vm.lk = function(){ $ state.transitionTo( 'productEdit'、{'id':1}、{reload:true、inherit:false、notify:true}); } ng-clickでこの関数を呼び出しました – WilsonPena

関連する問題