masonry-layoutにnpmをインストールしましたが、このコンポーネントをレンダリングすると要素の定義されていないエラーが発生しますか?reactjsと石積みのレイアウト - 未定義
を「未定義のプロパティ 『要素』を設定することはできません」ここで私はreactjsに新しいですし、私は仕事に石工レイアウトグリッドを取得しようとしていますjsfiddle
http://jsfiddle.net/0ht35rpb/82/
です。ドキュメントあたりとして https://masonry.desandro.com/#package-managers
import React from 'react'
// import $ from 'jquery'
import Masonry from 'masonry-layout'
class VideoGrid extends React.Component {
componentDidMount() {
this.invokeMasonry()
}
invokeMasonry() {
var elem = document.querySelector('.grid')
Masonry(elem, {
itemSelector: '.grid-item',
columnWidth: '.grid-sizer',
percentPosition: true
})
}
render() {
return (
<div className='grid'>
<div className='grid-sizer width2' />
<div className='grid-item width2'>
<img src='https://s3-us-west-2.amazonaws.com/s.cdpn.io/82/orange-tree.jpg' />
</div>
<div className='grid-item width2'>
<img src='https://s3-us-west-2.amazonaws.com/s.cdpn.io/82/submerged.jpg' />
</div>
</div>
)
}
}
export default VideoGrid
あなたはjQueryプラグインとしてそれを使用してみましたが? .i.e:$( '。grid')。masonry()。 – Ved
私は非常に類似したエラーを信じています - Uncaught TypeError:未定義のプロパティ '要素'を設定できません –
見てください:https://github.com/desandro/masonry/issues/869 – Ved