2015-06-09 61 views
2

我想爲我們的Io​​nic/AngularJS應用程序添加一些調試。我正在考慮使用visionmedia/debug庫。但是,我怎樣才能以更加角度的方式添加這個庫?將visionmedia/debug添加到Ionic/AngularJS應用程序

您可以看到一個plnkr帶有當前代碼的工作示例。確保打開開發者控制檯看到mva:module-amva:module-b

所以此時的輸出我已經引用在index.html的debug.js如下:

<script src="https://rawgit.com/visionmedia/debug/master/dist/debug.js" type="text/javascript"></script> 

,每個模塊我添加了一個變量以啓用記錄到此模塊。我現在在index.html參考該代碼:

<script> 
    debug.enable('*'); 
    var debugMdlA = debug('mva:module-a'); 
    var debugMdlB = debug('mva:module-b'); 
</script> 

最後,我可以在控制器中使用這個變量:

myApp.controller('MyController', function ($scope) { 
    debugMdlA('Some logging for module A'); 
    debugMdlB('Some logging for module B'); 
}); 

但是,這一切是不是很「Angularish」。有沒有人知道這個圖書館更好的Angularish方式?

回答

2

你總是可以做的LogFactory並將它注入到你的控制器:

myApp.controller('MyController', function ($scope, LogFactory) { 
    LogFactory.log('functionA', 'log something or other'); 
}); 

myApp.factory('LogFactory', function() { 
    return { 
    log: function(functionName, message) { 
     debug(functionName)(message); 
    } 
    } 
}); 

http://plnkr.co/edit/NP6PZGH7nHroly8QMtsh?p=preview