Current section

Files

Jump to
react_phoenix priv js react_phoenix.js
Raw

priv/js/react_phoenix.js

"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var a=0;a<t.length;a++){var r=t[a];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function _createClass(e,t,a){return t&&_defineProperties(e.prototype,t),a&&_defineProperties(e,a),e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=_interopRequireDefault(require("react")),_reactDom=_interopRequireDefault(require("react-dom")),ReactPhoenix=function(){function ReactPhoenix(){_classCallCheck(this,ReactPhoenix)}return _createClass(ReactPhoenix,null,[{key:"init",value:function init(){var elements=document.querySelectorAll("[data-react-class]");Array.prototype.forEach.call(elements,function(e){var targetId=document.getElementById(e.dataset.reactTargetId),targetDiv=targetId||e,reactProps=e.dataset.reactProps?e.dataset.reactProps:"{}",reactElement=_react.default.createElement(eval(e.dataset.reactClass),JSON.parse(reactProps));_reactDom.default.render(reactElement,targetDiv)})}}]),ReactPhoenix}();exports.default=ReactPhoenix,document.addEventListener("DOMContentLoaded",function(e){ReactPhoenix.init()});