bandar3380
PD🧩 Plasmo Developers
•Created by bandar3380 on 7/24/2023 in #👟framework
createRootContainer returns null
export const render: PlasmoRender<PlasmoCSUIJSXContainer> = async ({
createRootContainer
}) => {
const rootContainer = await createRootContainer()
if (!rootContainer) return console.error("Root container not found")
const root = createRoot(rootContainer)
root.render(<CustomButton />)
}
export const render: PlasmoRender<PlasmoCSUIJSXContainer> = async ({
createRootContainer
}) => {
const rootContainer = await createRootContainer()
if (!rootContainer) return console.error("Root container not found")
const root = createRoot(rootContainer)
root.render(<CustomButton />)
}
export const getRootContainer
defined and even document.querySelector('body')
produces the same result
export const getRootContainer = () => {
new Promise((resolve) => {
const selector = "ul[data-test-id='ticket-editor-app-icon-view']"
if (document.querySelector(selector)) {
const rootContainerParent = document.querySelector(selector)
const rootContainer = document.createElement("li")
rootContainerParent.appendChild(rootContainer)
return resolve(rootContainer)
}
const observer = new MutationObserver((mutations) => {
if (document.querySelector(selector)) {
const rootContainerParent = document.querySelector(selector)
const rootContainer = document.createElement("li")
rootContainerParent.appendChild(rootContainer)
resolve(rootContainer)
observer.disconnect()
}
})
observer.observe(document.body, {
childList: true,
subtree: true
})
})
}
export const getRootContainer = () => {
new Promise((resolve) => {
const selector = "ul[data-test-id='ticket-editor-app-icon-view']"
if (document.querySelector(selector)) {
const rootContainerParent = document.querySelector(selector)
const rootContainer = document.createElement("li")
rootContainerParent.appendChild(rootContainer)
return resolve(rootContainer)
}
const observer = new MutationObserver((mutations) => {
if (document.querySelector(selector)) {
const rootContainerParent = document.querySelector(selector)
const rootContainer = document.createElement("li")
rootContainerParent.appendChild(rootContainer)
resolve(rootContainer)
observer.disconnect()
}
})
observer.observe(document.body, {
childList: true,
subtree: true
})
})
}
2 replies