Я использую React и стараюсь использовать теги Polymer внутри React. Реакция не распознает теги Polymer, так как React обрабатывает только базовые теги DOM. Есть ли способ добавить теги Polymer в React DOM library?
Можно ли использовать Polymer внутри React?
Ответ 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 есть.
Чтобы использовать существующие элементы, просто следуйте их с помощью руководства по элементам.