簡體   English   中英

AngularJs:在文本中查找帶有初始“ www”的鏈接,並將其轉換為html鏈接

[英]AngularJs: Find links with initial 'www' in the text and turns them into html links

我使用的角度linky找到的文本鏈接,並將其轉換為URL。 但是linky不支持如下網址:

www.abc.com
abc.xyz

還有其他方法可以支持這些鏈接嗎?

linky過濾器已經支持類似www.abc.com的地址。

自己開發支持abc.xyz正則abc.xyz太復雜了, abc.xyz 我建議為此使用成熟的第三方庫,例如自動鏈接器。

這是一個簡單的模塊 ,可能有助於配置(使用Autolinker支持的選項)並將其包裝到Angular過濾器中

angular.module('linkier', ['ngSanitize'])
.constant('linkierConfig', {})
.filter('linkier', ['$window', '$sanitize', 'linkierConfig', 
  function ($window, $sanitize, linkierConfig) {
  return function (input, config) {
    if (!angular.isString(input))
      return input;

    config = angular.extend({}, linkierConfig, angular.isObject(config) ? config : {});
    return $sanitize($window.Autolinker.link(input, config));
  };
}]);

在文本輸入中查找鏈接,並將其轉換為html鏈接。 支持http / https / ftp / mailto和純電子郵件地址鏈接。

因此似乎並非如此。 您應該創建自己的過濾器來解決此問題。 這是一個入門的模板。

angular
    .module('app.filters')
        .filter('urlLink', urlLink);

function urlLink() {
    return function(value) {
        var result = '';
        // ... logic ...
        return result;
    }
}

檢查字符串是否為有效URL的最佳正則表達式是什么?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM