目前,我有一个Angular.js页面,它允许搜索并显示结果。用户单击搜索结果,然后单击“后退”按钮。我希望再次显示搜索结果,但是我不知道如何触发搜索执行。详细信息如下:
如何使搜索功能再次执行而无需用户按下“搜索按钮”?如果是jQuery,那么我将在documentready函数中执行一个函数。我看不到Angular.js等效项。
一方面,如@ Mark-Rajcok所说,您可以使用私有内部函数:
// at the bottom of your controller var init = function () { // check if there is query in url // and fire search in case its value is not empty }; // and fire it after definition init();
您也可以看看ng-init指令。实现将非常像:
// register controller in html <div data-ng-controller="myCtrl" data-ng-init="init()"></div> // in controller $scope.init = function () { // check if there is query in url // and fire search in case its value is not empty };
但是要小心,因为角度文档暗示(自v1.2起)不要ng- init为此使用。但是imo取决于您应用程序的体系结构。
ng- init
我ng-init曾想将后端的值传递给angular应用程序:
ng-init
<div data-ng-controller="myCtrl" data-ng-init="init('%some_backend_value%')"></div>