⚛️ 反応swiper.jsスライダー
28644 ワード
導入
実際には、今日の記事は、このポストのプレビューで見ることができる特定のスライダを作る方法だけでなく、一般的にどのように多くの努力を置くことなく反応に様々な単純なスライダを実装するために捧げられています.
私が今日あなたに与えるスライダーは、私の別々のプロジェクトの一部です.スライダー自体は多くのコラムの形で作られています.そして、それは各々の国に分けられます、そして、各々のコラムの中に、これらの国のアーティストに関する情報があります.
スライダースライダ
始めましょう
01 .スパーjs
まず、接続する必要がありますSwiper.js . あなたがリンクに従うことができますし、それをダウンロードしたり、それを介して接続して
私はcodepenでスライダーを作成していたので、私は
リンクを得るには
また、接続する必要があります
リンクを得るには
02機能性
まず第一に、我々は
他のプロパティのほとんどを見つけることができます公式ウェブサイトAPI section .
03 .スライドの作成
スライダーのコンテナーを作成し、プロパティを指定した後、スライドの外観を操作する必要があります.前に述べたように、スライダは
私はすべてのスライドを作ることにした
これを行うには、私たちは、私たちが
04章コンテンツ
今、我々はちょうど我々が必要な情報を追加するコンテンツをスライダを埋めるために必要があります.
これを行うには、クラスを作成する必要があります
例:
それは、レンダリングするだけです
このサイトは次のような画面解像度に適しています.
最後に、これはスライダを作成するための最も理想的な方法ではないと言う価値がある、と私はあなたに同意します.私が本当のプロジェクトで類似のスライダーを作っているならば、私はそれをオブジェクトを通して出力して、かなりより多くの構成要素をつくるでしょう.しかし、私はちょうどこのようなスライダーを作る方法を初心者のための簡単な理解を与えるためにこのポストを書いた.
私のポストにあなたの貴重な時間を与えてくれてありがとう.また近いうちに.
私はあなたに私の購読するように助言することができます.
さようなら.よい滑りがある.
実際には、今日の記事は、このポストのプレビューで見ることができる特定のスライダを作る方法だけでなく、一般的にどのように多くの努力を置くことなく反応に様々な単純なスライダを実装するために捧げられています.
私が今日あなたに与えるスライダーは、私の別々のプロジェクトの一部です.スライダー自体は多くのコラムの形で作られています.そして、それは各々の国に分けられます、そして、各々のコラムの中に、これらの国のアーティストに関する情報があります.
スライダースライダ
始めましょう
01 .スパーjs
まず、接続する必要がありますSwiper.js . あなたがリンクに従うことができますし、それをダウンロードしたり、それを介して接続して
npm
で行を使用するnpm i swiper
コンソール.You can read all the documentation on the official page in the React section. 私はcodepenでスライダーを作成していたので、私は
JS
セクション.リンクを得るには
Settings
ボタンをクリックしJS
セクション.また、接続する必要があります
Swiper.css
スライドの正しいレンダリングのために.(いつものようにスタイルを変更することができます).リンクを得るには
Settings
ボタンをクリックしCSS
セクション.02機能性
まず第一に、我々は
Slider
クラスの中では、スライダーの特性を指定し、スライド用のコンテナーをレンダリングします.class Slider extends React.Component {
componentDidMount() {
new Swiper(this.refs.slider,{
slidesPerView : this.props.slidePerView,
slidesPerGroup: this.props.slidesPerGroup,
loop: this.props.loop,
freeMode: true
});
}
render() {
return (
<div className="containerSlider">
<div className="swiper-container" ref="slider">
<div className="swiper-wrapper">
{this.props.children}
</div>
</div>
</div>
)
}
}
componentDidMount()
- slidesPerView - Number of slides per view (slides visible at the same time on slider's container). (Personally, I specified auto because I wanted the slider to look more natural, but if you don't want to bother with the size of the slides, you can just specify the number of slides that should fit on the screen at a time.)
- slidesPerGroup - Set numbers of slides to define and enable group sliding. Useful to use with slidesPerView > 1. (The property is necessary so that when you finish turning the slider to the end, you would be thrown to the very beginning of the slider, so that you do not have to turn back. It is necessary for long sliders.)
- loop - Set to true to enable continuous loop mode.
- freeMode - If enabled then slides will not have fixed positions. You can stop the slider at any convenient scrolling point.
render()
- containerSlider - You can name this class as you like, it is needed in order to set the dimensions of the entire slider.
- swiper-container & swiper-wrapper - these classes should be left in the form in which they are written. They are needed for the slider to work correctly.
他のプロパティのほとんどを見つけることができます公式ウェブサイトAPI section .
03 .スライドの作成
スライダーのコンテナーを作成し、プロパティを指定した後、スライドの外観を操作する必要があります.前に述べたように、スライダは
7 sections
, それぞれがAcountry
, そして、各セクションの中にはartists
これらの国々の私はすべてのスライドを作ることにした
520px
サイズでは、擬似クラスを使用して、各スライドの異なるサイズを設定することができますてnth-child()
.2 artists
各スライドの中で表現されます.これを行うには、私たちは、私たちが
DOM structure
スライドの.あなたが欲しいものは何でも呼ぶことができますСountries
.function Сountries(props) {
return(
<div className="swiper-slide">
<div className="countryTitle">
<h2 className="countryTitle__name">{props.countryTitle}</h2>
</div>
<div className="painter">
<div className="painter__info">
<div className="painter__textWrap">
<div className="painter__text">
<h1 className="painter__name">{props.name}</h1>
<p className="painter__years">{props.born}</p>
</div>
</div>
<div className="painter__imgWrap">
<div className="painter__img">
<div className={`painter__imgBg _bg_${props.class}`}></div>
</div>
</div>
</div>
</div>
<div className="painter">
<div className="painter__info">
<div className="painter__textWrap">
<div className="painter__text">
<h1 className="painter__name">{props.name2}</h1>
<p className="painter__years">{props.born2}</p>
</div>
</div>
<div className="painter__imgWrap">
<div className="painter__img">
<div className={`painter__imgBg _bg_${props.class2}`}></div>
</div>
</div>
</div>
</div>
</div>
);
}
関数の内部では、特別なproperties
これで我々はinformation about our artists
.04章コンテンツ
今、我々はちょうど我々が必要な情報を追加するコンテンツをスライダを埋めるために必要があります.
これを行うには、クラスを作成する必要があります
Slider
使用するクラス<Slider slidePerView="auto" slidesPerGroup="7"></Slider>
タグ.class App extends React.Component {
render() {
return (
<Slider slidePerView="auto" slidesPerGroup="7">
</Slider>
)
}
}
と内部Slider
タグは、必要に応じて、多くのスライドを個別に挿入する必要があります.我々は、このCountries
我々が定めたクラスDOM structure
スライドの.例:
<Сountries countryTitle="Italy"
name="Titian Vecellio" born="1488 - 1576" class="titian"
name2="Leonardo da Vinci" born2="1452 - 1519" class2="vinci" />
一般的に以下のようになります.class App extends React.Component {
render() {
return (
<Slider slidePerView="auto" slidesPerGroup="7">
<Сountries countryTitle="Italy"
name="Titian Vecellio" born="1488 - 1576" class="titian"
name2="Leonardo da Vinci" born2="1452 - 1519" class2="vinci" />
<Сountries countryTitle="France"
name="Louis-Michel van Loo" born="1707 - 1771" class="vanLoo"
name2="Eugene Delacroix" born2="1798 - 1863" class2="delacroix" />
<Сountries countryTitle="Spain"
name="Bartholomew Murillo" born="1618 - 1682" class="murillo"
name2="El Greco" born2="1541 - 1614" class2="greco" />
<Сountries countryTitle="Belgium"
name="Jan van Eyck" born="1385 - 1441" class="eyck"
name2="Anthony van Dyck" born2="1599 - 1641" class2="dyck" />
<Сountries countryTitle="Germany"
name="Rafael Mengs" born="1728 - 1779" class="mengs"
name2="Franz Xaver Winterhalter" born2="1818 - 1885" class2="winterhalter" />
<Сountries countryTitle="Russia"
name="Karl Pavlovich Brullov" born="1799 - 1852" class="brullov"
name2="Viktor Mikhailovich Vasnetsov" born2="1848 - 1926" class2="vasnetsov" />
<Сountries countryTitle="Netherlands"
name="Pieter Bruegel The Elder" born="1525 - 1569" class="bruegel"
name2="Peter Paul Rubens" born2="1577 - 1640" class2="rubens" />
</Slider>
)
}
}
05レンダリングそれは、レンダリングするだけです
App
クラスとすべては準備ができています.ReactDOM.render(<App />, document.getElementById('root'));
反応このサイトは次のような画面解像度に適しています.
@media screen and (orientation: landscape) and (max-height: 780px)
@media screen and (orientation: landscape) and (max-height: 630px)
@media screen and (orientation: landscape) and (max-height: 540px)
@media screen and (orientation: landscape) and (max-height: 460px)
@media screen and (max-width: 1600px)
@media screen and (max-width: 1440px)
@media screen and (max-width: 1366px)
@media screen and (max-width: 1280px)
@media screen and (max-width: 1024px)
@media screen and (max-width: 768px)
@media screen and (max-width: 414px)
@media screen and (max-width: 375px)
@media screen and (max-width: 320px)
@media screen and (max-width: 680px) and (max-height: 520px)
終わり最後に、これはスライダを作成するための最も理想的な方法ではないと言う価値がある、と私はあなたに同意します.私が本当のプロジェクトで類似のスライダーを作っているならば、私はそれをオブジェクトを通して出力して、かなりより多くの構成要素をつくるでしょう.しかし、私はちょうどこのようなスライダーを作る方法を初心者のための簡単な理解を与えるためにこのポストを書いた.
私のポストにあなたの貴重な時間を与えてくれてありがとう.また近いうちに.
私はあなたに私の購読するように助言することができます.
さようなら.よい滑りがある.
Reference
この問題について(⚛️ 反応swiper.jsスライダー), 我々は、より多くの情報をここで見つけました https://dev.to/kerthin/how-create-react-swiper-slider-easy-tutorial-51ilテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol