![](/img/trans.png)
[英]Unable to create graphs using highcharts-ng in meanjs. how to create graphs from the existing table in MEANJS
[英]Allow skype calls from Angular App (using meanjs)
我無法擺脫影響我的應用程序功能的小問題,以便能夠使用Skype撥打電話號碼,到目前為止我所擁有的是:
HTML :
<a ng-href="skype:{{user.phone}}?call" class="btn btn-sm btn-success" type="button">{{user.phone}}</a>
ANGULAR
(function() {
angular.module('core').config(coreConfig);
coreConfig.$inject = ['$compileProvider'];
function coreConfig($compileProvider) {
$compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|tel|file|skype):/);
}
})();
結果總是一樣的,當我懸停元素開始調用時,瀏覽器會顯示: unsafe:skype:012345678?call
並且不允許我撥打號碼...
我添加了配置部分瀏覽與類似問題相關的其他問題,但它沒有解決我的問題。
編輯 :我正在使用meanjs.org
編輯2 :請不要復制/粘貼我的問題代碼作為你的答案...我知道它適用於普通的Angular應用程序。 問題是我不能讓它使用meanjs.org應用程序。 謝謝。
編輯3 :我剛剛發現:如果我在主根/
或子根中使用skype鏈接: /list
它可以正常工作而不添加unsafe
前綴。 在動態根目錄中: /list/1234
它不再起作用。 我不知道它是否有幫助。
您需要使用正則表達式向Angular的白名單中明確添加URL協議。 默認情況下,僅啟用http
, https
, ftp
和mailto
。 Angular將使用unsafe:
的非白名單URL作為前綴unsafe:
當使用chrome-extension:
等協議時chrome-extension:
。
將chrome-extension:
列入白名單的好地方chrome-extension:
協議將在您的模塊的配置塊中:
var app = angular.module( 'myApp', [] )
.config( [
'$compileProvider',
function( $compileProvider )
{
$compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|chrome-extension):/);
// Angular before v1.2 uses $compileProvider.urlSanitizationWhitelist(...)
}
]);
當您需要使用諸如file:
和tel:
協議時,同樣的過程也適用。
有關詳細信息,請參閱AngularJS $ compileProvider API文檔 。
我已經讓它成功地跟隨了這個問題http://plnkr.co/edit/rIPFz9WhFjlRJ1ogCArP?p=preview
angular.module('plunker', [])
.config(function($compileProvider){
$compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|skype|mailto|tel|file):/)
})
.controller('MainCtrl', function($scope) {
$scope.href = 'skype:123456?call';
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.