2017-04-21 60 views
1

我很困惑。您能否澄清angular.extend()$ provide.decoratorWhy and when use the second one?修飾器做一些不同於延伸?執行搜索後,我找不到任何答案...

回答

1

angular.extend()只是標準JavaScript擴展工具的另一個實現。你可以找到許多其它類似的(如果不相同)的實現,如Object.assign()jQuery'sUnderscore's ...

$provide.decorator()雖然是角實施the decorator pattern,並且更加強大,因爲它可以讓你改變的行爲透明地提供,即不必修改依賴對象。文檔中的例子非常簡單:每次調用$log.warn()時,該消息將自動以'Decorated Warn: '作爲前綴。