AngularJs: পৃষ্ঠা পুনরায় লোড করুন




angularjs-scope (7)

<a ng-href="#" class="navbar-brand" title="home" data-translate>PORTAL_NAME</a>

আমি পৃষ্ঠাটি পুনরায় লোড করতে চাই। কিভাবে আমি এটি করতে পারব?


Angulars আরও উন্নত UI- angular-ui/ui-router ব্যবহার করে যা আমি স্পষ্টভাবে সুপারিশ চাই তাহলে আপনি এখন কেবল ব্যবহার করতে পারেন:

$state.reload();

যা মূলত Dunc এর উত্তর হিসাবে একই করছেন।


অসীম লুপ এড়াতে আমার সমাধানটি পুনঃনির্দেশ তৈরি করে এমন আরেকটি রাষ্ট্র তৈরি করতে হয়েছিল:

$stateProvider.state('app.admin.main', {
    url: '/admin/main',
    authenticate: 'admin',
    controller: ($state, $window) => {
      $state.go('app.admin.overview').then(() => {
        $window.location.reload();
      });
    }
  });

আলেকজান্দ্রিনের উত্তরের অনুরূপ, কিন্তু $ রাউটারের পরিবর্তে $ রাষ্ট্র ব্যবহার করে:

(জিমথেভের SO এর উত্তর থেকে here ।)

$scope.reloadState = function() {
   $state.go($state.current, {}, {reload: true});
}

<a ng-click="reloadState()" ... 

এটি কেবল $route.reload() ব্যবহার করতে যথেষ্ট সহজ। (আপনার $route.reload() $ রুট ইনজেক্ট করতে ভুলবেন না), তবে আপনার উদাহরণ থেকে আপনি কেবল "ng-href" এর পরিবর্তে "href" ব্যবহার করতে পারেন:

<a href=""  class="navbar-brand" title="home"  data-translate>PORTAL_NAME</a>

Angleular {{}} ট্যাগগুলির বিষয়বস্তু প্রতিস্থাপিত করার আগে ব্যবহারকারীর দ্বারা অবৈধ লিঙ্কগুলি থেকে ব্যবহারকারীকে সুরক্ষিত করার জন্য আপনাকে শুধুমাত্র ng-href ব্যবহার করতে হবে।


window অবজেক্টটি সহজে পরীক্ষা এবং ঠকানোর জন্য $window পরিষেবা মাধ্যমে উপলব্ধ করা হয়, আপনি এরকম কিছু দিয়ে যেতে পারেন:

$scope.reloadPage = function(){$window.location.reload();}

এবং :

<a ng-click="reloadPage"  class="navbar-brand" title="home"  data-translate>PORTAL_NAME</a>

একটি পার্শ্ব নোট হিসাবে, আমি মনে করি না $ route.reload () আসলে পৃষ্ঠাটিকে পুনরায় লোড করে, তবে শুধুমাত্র রুট


কৌণিক 2+

আমি Angular 2+ অনুসন্ধান করার সময় এটি খুঁজে পেয়েছি, তাই এখানে উপায়টি হল:

window.location.reload();

<a title="Pending Employee Approvals" href="" ng-click="viewPendingApprovals(1)">
                    <i class="fa fa-user" aria-hidden="true"></i>
                    <span class="button_badge">{{pendingEmployeeApprovalCount}}</span>
                </a>

এবং নিয়ামক মধ্যে

 $scope.viewPendingApprovals = function(type) {
                if (window.location.hash.substring(window.location.hash.lastIndexOf('/') + 1, window.location.hash.length) == type) {
                    location.reload();
                } else {
                    $state.go("home.pendingApproval", { id: sessionStorage.typeToLoad });
                }
            };

এবং রুট ফাইল

.state('home.pendingApproval', {
        url: '/pendingApproval/:id',
        templateUrl: 'app/components/approvals/pendingApprovalList.html',
        controller: 'pendingApprovalListController'
    })

সুতরাং, যদি ইউআরএলটিতে প্রেরিত আইডি নোঙ্গর ক্লিক করে ফাংশন থেকে যা আসছে তা একই, তবে কেবল পুনরায় লোড করুন, অন্যথায় অনুরোধ করা রুটটি ফলো করুন।

এই সাহায্য করে, তাহলে এই উত্তর উন্নত করতে সাহায্য করুন। কোন, পরামর্শ স্বাগত জানাই।





angularjs-scope