指令中$ location的角度用法重新绘制所有其他指令

时间:2017-08-18 12:56:32

标签: angularjs

我有一个使用多个指令的页面:

<section class="start_page page--no-vcenter">
        <u-search>
            <u-search-form></u-search-form>
            <u-news-form></u-news-form>
            <u-search-pane></u-search-pane>
        </u-search>
        <u-news>
            <u-news-pane></u-news-pane>
        </u-news>
    </u-search>
</section>

当我使用一个使用$ location的服务并在其中一个指令中设置search()参数时,所有指令都会重新绘制。

return $location.search(obj);

如何避免重新绘制其他指令?

我正在使用Angular 1.2.28。

1 个答案:

答案 0 :(得分:0)

解决方案很简单,因为我只更新了search()部分,resp。查询参数。

您可以在这里使用

$routeProvider.when('/somewhere', {
    controller: 'SomeCtrl',
    reloadOnSearch: false
})

当改变路径时,我猜是更复杂的。

github上的问题是:https://github.com/angular/angular.js/issues/1699

我在这个答案中找到的解决方案: https://stackoverflow.com/a/17606908/541949