क्यों ReactDOM.createPortal में काम नहीं करता है अपनी सामग्री स्क्रिप्ट?

0

सवाल

मैं एक सामग्री है.tsx फ़ाइल में निम्न कोड:

import React from "react";
import {createPortal} from 'react-dom';

import Text from './Text';

console.log(`Content script...`);

createPortal(
    <Text/>,
    document.body
);

"पाठ" घटक कोड:

import React from 'react';

const Text = () => {
    return (
        <div>
            Just text...
        </div>
    );
};

export default Text;

मेरे प्रकट में शामिल हैं:

...other keys
"content_scripts": [
    {
      "matches": ["http://*/*", "https://*/*"],
      "js": ["./static/js/content.js"],
      "run_at": "document_end"
    }
]

के रूप में आप देख सकते हैं, फ़ाइल भरी हुई है और संदेश Content script ... में छपा है सांत्वना. https://i.stack.imgur.com/GS0gK.png

लेकिन div पाठ के साथ Just text... नहीं जोड़ा गया था शरीर के लिए, दूसरे शब्दों में, createPortal काम नहीं करता है. https://i.stack.imgur.com/j2geh.png

1

सबसे अच्छा जवाब

1

आप की जरूरत लिखने के लिए createPortal अंदर return या render,

इस तरह:

render() {
    return ReactDOM.createPortal(
         this.props.children,
         document.body
     );
}
2021-11-15 13:13:41

मैं बनाया एक codesandbox आप के लिए, और यह काम कर रहा है पूरी तरह से ठीक कर सकते हैं, आप इसे बाहर की जाँच करें: codesandbox.io/एस/wizardly-कैश-2vfby?फ़ाइल=/src/सामग्री.jsx
Pradip Dhakal

मैं जाँच की है, कोड काम नहीं करता है, मेरे मामले में, लेकिन मैं करने में सक्षम था की प्रकृति को समझने में मेरी समस्या है, धन्यवाद.
user17418364

अन्य भाषाओं में

यह पृष्ठ अन्य भाषाओं में है

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

इस श्रेणी में लोकप्रिय

लोकप्रिय सवाल इस श्रेणी में