Подтвердить что ты не робот

Можно ли использовать Polymer внутри React?

Я использую React и стараюсь использовать теги Polymer внутри React. Реакция не распознает теги Polymer, так как React обрабатывает только базовые теги DOM. Есть ли способ добавить теги Polymer в React DOM library?

4b9b3361

Ответ 1

Да, это возможно.

  • Создайте полимерный элемент.

    <link rel="import" href="../../bower_components/polymer/polymer.html">
    
    Polymer({
        is: 'calender-element',
        ready: function(){
            this.textContent = "I am a calender";
        }
    });
    
  • Сделайте полимерный компонент тегом html, импортировав его на html-странице. Например. импортируйте его в index.html вашего реагирующего приложения.

    <link rel="import" href="./src/polymer-components/calender-element.html">
    
  • Используйте этот элемент в файле jsx.

    'use strict';
    
    import React from 'react';
    
    class MyComponent extends React.Component{
        render(){
            return (
                <calender-element></calender-element>
            );
        }
    }
    
    export default MyComponent;
    

Ответ 2

Можно ли использовать Polymer внутри React?

Короткий ответ: не совсем.

Длинный ответ: любопытный. Вы должны создавать компоненты, которые непосредственно создают узлы и манипулируют атрибутами. Существуют и другие соображения для детей элемента и т.д.

Можно ли использовать React внутри Polymer?

Это в значительной степени тот же ответ таким образом, вам придется обернуть компонент React в полимерный элемент.

Почему?

Полимер (на основе веб-компонентов) и React (библиотека компонентов ui) основаны на "компонентах". Поскольку нет единого способа выразить компонент в Интернете, вам необходимо установить мост между различными библиотеками. То же самое справедливо и для вопросов о "реакции в angular", "jquery plugin in react", "нокауте в плагине jquery", "реакции в позвоночнике", "angular" с полимерными элементами, которые используют основную цепь и реагируют с полимерными элементами которые используют angular 'и т.д.

В таком случае, как angular с полимером, вы можете подумать, что это очень просто, но полимер не знает об оценке выражений angular или каких-либо декларативных обратных вызовов. Вам нужен мост почти в каждом случае, и они никогда не бывают хорошими.

Ответ 3

Это довольно старый вопрос, но как насчет https://www.npmjs.com/package/react-polymer? разве это не поддержка полимерных компонентов для реакции?

import reactPolymer from 'react-polymer'; //IMPORTANT: Must be imported before React.
import React from 'react';

reactPolymer.registerAttribute('raised');
reactPolymer.registerAttribute('url');
reactPolymer.registerEvent('response', 'onResponse');


<paper-button raised>another button</paper-button>
<iron-ajax url="http://example.com/" onResponse={this.handleResponse} />

Ответ 4

Отвечать в соответствии с текущими стадиями реакции и полимера

Поскольку этот вопрос задавали некоторое время назад, и многое изменилось с тех пор, я хотел бы добавить, что теперь вы можете использовать полимерные элементы в реакции, но для ваших пользовательских атрибутов и событий он вызывает проблему, с которой он может легко справиться используя react-polymer, он поддерживает почти все элементы, за исключением элементов gold-*.

Почему вы хотите использовать Polymer с реакцией?

  • Это может еще больше упростить процесс разработки или сделать его большим беспорядком. Это зависит от того, как вы его используете.
  • Скорость разработки и простота использования, предлагаемые полимерными компонентами, не имеет себе равных.
  • Реакция может дополнительно разрушить ваши компоненты, состоящие из полимерных компонентов, в управляемые части.
  • Просто потому, что реагировать и JSX - это любовь.
  • Эй, почему, черт возьми, нет?

Ответ 5

Ответ ДА. Но это не так просто. Итак, я попытался следовать некоторым документациям, которые фактически являются официальными, но лучше всего это было: https://medium.com/jens-jansson/start-using-web-components-in-react-6ccca2ca21f9

Я следовал за шагами, упомянутыми, и это работало! Я также упоминаю репозиторий github, в котором я пытался интегрировать сборщик даты vaadin, а также один из входных данных для полимерных элементов. https://github.com/manit815/react-with-webcomponent

Ответ 6

Я просто пробовал это сегодня, и мне удалось успешно использовать материальные элементы из их каталога элементов. Я не стал тщательно тестировать его, но поскольку использование тегов в React идет, оно работает, и все html и css есть.

Чтобы использовать существующие элементы, просто следуйте их с помощью руководства по элементам.