<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Phillip Powell</title>
    <description>The latest articles on DEV Community by Phillip Powell (@ppowell777).</description>
    <link>https://dev.to/ppowell777</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3314177%2F770ff2b2-7b20-47ae-a65c-431212a23c13.png</url>
      <title>DEV Community: Phillip Powell</title>
      <link>https://dev.to/ppowell777</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ppowell777"/>
    <language>en</language>
    <item>
      <title>react-bootstrap Modal never displays</title>
      <dc:creator>Phillip Powell</dc:creator>
      <pubDate>Wed, 03 Sep 2025 04:12:24 +0000</pubDate>
      <link>https://dev.to/ppowell777/react-bootstrap-modal-never-displays-3l5h</link>
      <guid>https://dev.to/ppowell777/react-bootstrap-modal-never-displays-3l5h</guid>
      <description>&lt;p&gt;I am tasked with rewriting our existing Feedback page into a React framework format. I am using react-bootstrap to try to make it easier for me to rewrite the modal, however, the modal never displays, even after clicking the "Feedback" link; even the resulting HTML never appears in Inspect Element.&lt;/p&gt;

&lt;p&gt;I have no idea what I am doing wrong, even after visiting about 10 different tutorials and various sites.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;// feedback_container.js

export const FeedbackContainer = () =&amp;gt; {
  return (
                &amp;lt;div className="feedback"&amp;gt;
                &amp;lt;a href={URL_PREFIX + '/portal/feedback?url=/'} id="feedback-link"
                   data-toggle="modal"
                   data-target="#feedback-modal"
                   onClick={(event) =&amp;gt; {
                       event.preventDefault();
                       return false;
                   }}&amp;gt;
                    &amp;lt;img src={feedbackPng} alt="feedback"/&amp;gt;
                &amp;lt;/a&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div className="modal fade modal-wide" id="feedback-modal" tabIndex="-1" role="dialog"
                 aria-labelledby="myModalLabel" aria-hidden="true"&amp;gt;
                &amp;lt;FeedbackModal /&amp;gt;
            &amp;lt;/div&amp;gt;
  );
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import React, {useEffect, useState} from 'react';
import {htmlDecode, useGetData} from "../functions/global_functions";
import {URL_PREFIX} from "../constants/global_constants";
//import $ from 'jquery';
//import 'bootstrap/dist/css/bootstrap.min.css';
import {Modal} from "react-bootstrap";

/**
 * Used within "./feedback_container.js"
 *
 * @returns {JSX.Element}
 * @constructor
 */
const FeedbackModalContentDeliverer = () =&amp;gt; {
    const url = URL_PREFIX + '/portal/feedback?url=/';
    let html = useGetData({url: url, isJson: false});
    const [content, setContent] = useState('');
    const [loading, setLoading] = useState(true);
    useEffect(() =&amp;gt; {
        if (typeof html !== 'undefined' &amp;amp;&amp;amp; html !== null &amp;amp;&amp;amp; html.trim().length &amp;gt; 0) {
            console.log('works?');
            // eslint-disable-next-line
            html = html.substring(html.indexOf('&amp;lt;h1&amp;gt;Feedback&amp;lt;/h1&amp;gt;'),
                html.lastIndexOf('&amp;lt;/form&amp;gt;&amp;lt;/div&amp;gt;') + '&amp;lt;/form&amp;gt;&amp;lt;/div&amp;gt;'.length);
            setLoading(false);
            setContent(html);
        }
    }, [html]);

    if (loading) {
        return (
            &amp;lt;&amp;gt;&amp;lt;/&amp;gt;
        );
    } else {
        console.log(content);
       return (
         &amp;lt;&amp;gt;
             {htmlDecode(content)}
         &amp;lt;/&amp;gt;
       );
    }
};

/**
 * The actual modal
 *
 * @returns {Element}
 * @constructor
 */
const FeedbackModal = () =&amp;gt; {
    const [show, setShow] = useState(false);
    const handleClose = () =&amp;gt; setShow(false);
    return (
        &amp;lt;&amp;gt;
                &amp;lt;Modal
                    id="your_feedback_modal"
                    show={show}
                    onHide={handleClose}&amp;gt;
                    &amp;lt;div className="modal-dialog"&amp;gt;
                        &amp;lt;div className="modal-content"&amp;gt;
                            &amp;lt;div className="modal-header"&amp;gt;
                                &amp;lt;button type="button" className="close" data-dismiss="modal"
                                        id="feedback_modal_close_button"
                                        onClick={handleClose}
                                        aria-hidden="false"&amp;gt;&amp;amp;times;&amp;lt;/button&amp;gt;
                                &amp;lt;h4 className="modal-title" id="myModalLabel"&amp;gt;Feedback&amp;lt;/h4&amp;gt;
                            &amp;lt;/div&amp;gt;
                            &amp;lt;div id="feedback-body" className="modal-body"&amp;gt;
                                &amp;lt;FeedbackModalContentDeliverer /&amp;gt;
                            &amp;lt;/div&amp;gt;
                        &amp;lt;/div&amp;gt;
                    &amp;lt;/div&amp;gt;
                &amp;lt;/Modal&amp;gt;
        &amp;lt;/&amp;gt;
    );
}

export default FeedbackModal;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Can someone please help? The content via useGetData does actually work, but the HTML to display the content in the modal does not.&lt;/p&gt;

&lt;p&gt;Thanks&lt;/p&gt;

</description>
      <category>react</category>
      <category>bootstrap</category>
      <category>javascript</category>
      <category>webdev</category>
    </item>
    <item>
      <title>create-react-app project refuses to recognize &lt;script src&gt;, &lt;link&gt; and &lt;img&gt; HTML tags</title>
      <dc:creator>Phillip Powell</dc:creator>
      <pubDate>Mon, 07 Jul 2025 13:25:40 +0000</pubDate>
      <link>https://dev.to/ppowell777/create-react-app-project-refuses-to-recognize-and-html-tags-2g5j</link>
      <guid>https://dev.to/ppowell777/create-react-app-project-refuses-to-recognize-and-html-tags-2g5j</guid>
      <description>&lt;p&gt;I created a create-react-app project using IntelliJ, and placed my index.html file in /public.  When I preview /public/index.html using IntelliJ's option to do so, it appears just fine; all images, stylesheets, and JS files are present. However, upon going to localhost:3000 via &lt;strong&gt;npm start&lt;/strong&gt; all  tags are ignored, all &lt;a href="" class="article-body-image-wrapper"&gt;&lt;img&gt;&lt;/a&gt; tags are ignored, and every  tag produces &amp;lt;/p&amp;gt;

&amp;lt;blockquote&amp;gt;
&amp;lt;p&amp;gt;Uncaught SyntaxError &amp;amp;quot;&amp;amp;lt;&amp;amp;quot;&amp;lt;/p&amp;gt;
&amp;lt;/blockquote&amp;gt;

&amp;lt;p&amp;gt;However, when I move the .css files, the .png/.jpg files, and the .js files into other folders, the &amp;lt;link&amp;gt;, &amp;lt;img&amp;gt;, and &amp;lt;script src&amp;gt; tags are immediately recognized this time after doing &amp;lt;strong&amp;gt;npm start&amp;lt;/strong&amp;gt;, and I have absolutely no idea why.&amp;lt;/p&amp;gt;

&amp;lt;p&amp;gt;Why is it that rearranging the location of files to change a tag in /public/index.html causes the page to properly display and function whereas it doesn&amp;amp;#39;t before whenever in a create-react-app project?&amp;lt;/p&amp;gt;

&amp;lt;p&amp;gt;I fixed the issue, but I don&amp;amp;#39;t understand why my fix works, and I can&amp;amp;#39;t find anything online that tells me why this behavior occurs.&amp;lt;/p&amp;gt;

&amp;lt;p&amp;gt;Thanks&amp;lt;/p&amp;gt;
&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>react</category>
      <category>html</category>
    </item>
  </channel>
</rss>
