Polymer 1.x: Использование Font Awesome с кнопкой paper-icon

Есть ли способ использовать значок из библиотеки Font Awesome в качестве значка внутри paper-icon-button?

Вот мой jsBin.

http://jsbin.com/rahesepeho/2/edit?html,output
<!doctype html>
<head>
  <meta name="description" content="iron-data-table beta3">
  <meta charset="utf-8">
  <base href="https://polygit.org/components/">
  <script src="webcomponentsjs/webcomponents-lite.min.js"></script>
  <link href="polymer/polymer.html" rel="import">
  <link href="paper-icon-button/paper-icon-button.html" rel="import"> 
</head>
<body>
  <dom-module id="x-foo">
    <style>
      :host {
        font-family: arial, sans-serif;
      }
    </style>
    <template>
      <p>The below <code>paper-icon-button</code> uses an image from Github.</p>
      <paper-icon-button
        src="https://assets-cdn.github.com/images/modules/logos_page/Octocat.png"
        alt="octocat" title="octocat">
      </paper-icon-button>
      <p>How do I make the below <code>paper-icon-button</code> use an icon from <a href="http://fontawesome.io/icons/" target="_blank">Font Awesome</a>?</p>
      <paper-icon-button
        src="https://assets-cdn.github.com/images/modules/logos_page/Octocat.png"
        alt="octocat" title="octocat">
      </paper-icon-button>
    </template>
    <script>
      document.addEventListener('WebComponentsReady', function() {
        Polymer({
          is: 'x-foo'
        });
      });
    </script>
  </dom-module>
  <x-foo></x-foo>
</body>

person Let Me Tink About It    schedule 08.07.2016    source источник
comment
Здесь находится компонент Bower для того же (хотя в нем отсутствует документация или пример того, как его использовать )   -  person a1626    schedule 08.07.2016


Ответы (3)


Пер @Stefanvott на сайте Polymer Slack:

Есть как минимум два способа:

  1. Используйте следующий пользовательский элемент https://customelements.io/philya/font-awesome-polymer-icons/ (У меня не сработало.)
  2. Сделайте это <paper-icon-button src="" class="fa fa-github-alt fa-lg"></paper-icon-button> для этого jsBin. См. код ниже.
Short version http://jsbin.com/hubonatopa/1/edit?html,output
paper-icon-button.fa {
    padding: .5em;
    height: 2em;
    width: 2em;
}
<paper-icon-button class="fa fa-github-alt fa-lg"></paper-icon-button>
Full version http://jsbin.com/hubonatopa/1/edit?html,output
<!doctype html>

<head>
  <meta name="description" content="iron-data-table beta3">
  <meta charset="utf-8">
  <base href="https://polygit.org/components/">
  <script src="webcomponentsjs/webcomponents-lite.min.js"></script>
  <link href="polymer/polymer.html" rel="import">
  <link href="paper-icon-button/paper-icon-button.html" rel="import">
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.6.3/css/font-awesome.css"> </head>

<body>
  <dom-module id="x-foo">
    <style>
      :host {
        font-family: arial, sans-serif;
      }

      paper-icon-button.fa {
        padding: 10px;
        line-height: 1em;
        overflow: hidden;
      }
    </style> <template>
      <p>The below <code>paper-icon-button</code> uses an image from Github.</p>
      <paper-icon-button src="https://assets-cdn.github.com/images/modules/logos_page/Octocat.png" alt="octocat" title="octocat"></paper-icon-button>
      <p>How do I make the below <code>paper-icon-button</code> use an icon from <a href="http://fontawesome.io/icons/" target="_blank">Font Awesome</a>?</p>
      <paper-icon-button class="fa fa-github-alt fa-lg"></paper-icon-button>
    </template>
    <script>
      document.addEventListener('WebComponentsReady', function() {
        Polymer({
          is: 'x-foo'
        });
      });
    </script>
  </dom-module>
  <x-foo></x-foo>
</body>
person Let Me Tink About It    schedule 08.07.2016

Вы можете использовать этот проект! Это круто, пакет Bower использовать в полимере 1-2. Сейчас последняя версия FA: 4.7. Здесь: https://github.com/vangware/fontawesome-iconset

person kelegorm    schedule 24.01.2018

в моем случае на полимере v1.8 мне пришлось создать элемент пользовательского стиля, как описано в этом ссылка , вставьте туда font-awesome css, а затем добавьте его в мой элемент, используя

   <template>
     <style include="shared-styles">
     </style>
     <paper-button> <i class="fa fa-facebook fa-lg"></i></paper-button>
   ..............
   </template>
person Osvaldo Maria    schedule 11.03.2017