Как использовать простой виджет JS в приложении React - PullRequest
0 голосов
/ 21 ноября 2019

Мне нужно встроить простой компонент JS, который является входом со своими собственными методами, в мое приложение React. У меня есть уменьшенный файл .js и .css и их файлы .map.

Я поместил их в статическую папку и попытался добавить к <div /> в одном из моих компонентов в componentDidMount()через ссылкуНо, похоже, это не связано с моим приложением. Все, что я вижу, это пустой div с тегами <script /> и <link />.

  componentDidMount () {
    const script = document.createElement('script')
    const link = document.createElement('link')

    script.type = 'text/javascript'
    script.src = 'static/my-component.js'
    script.async = true

    link.href = 'static/my-component.css'
    link.rel = 'stylesheet'

    this.el.appendChild(script)
    this.el.appendChild(link)
  }

render () {
    return (
      <div ref={el => (this.el = el)} />
    )
}

Ответы [ 2 ]

0 голосов
/ 21 ноября 2019

Я реализовал плагин (ics.js) следующим образом

1) Я создал новый модуль в:

/utilities/ics.js

export const ics = () => {
// plugin code here
}

2) из ​​моего компонента я импортировал свой плагин

import { ics } from './utilities/ics' // use the right path

3) В своем компоненте я использовал плагин там, где он мне нужен:

const cal = ics() // works

Дайте мне знать, еслиэто помогает.

Когда дело доходит до CSS, я просто импортирую его.

0 голосов
/ 21 ноября 2019

Я не понимаю, почему вы не можете добавить компонент vanilla JS в свое приложение React. Какова основная причина этого?

...