diff --git a/src/components/Articles/Articles.js b/src/components/Articles/Articles.js
index 12c7cd6..891a196 100644
--- a/src/components/Articles/Articles.js
+++ b/src/components/Articles/Articles.js
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types'
import ArticleCard from './ArticleCard/ArticleCard'
import Newsletter from '../Newsletter/Newsletter'
-const Articles = ({ data: { edges }, limit = 6 }) => {
+const Articles = ({ data: { edges }, limit = 6, setLimit = () => null }) => {
return (
<>
@@ -15,6 +15,12 @@ const Articles = ({ data: { edges }, limit = 6 }) => {
return null
})}
+
+ {edges.length === limit || edges.length <= limit
+ ? null
+ :
+ }
+
>
@@ -25,6 +31,8 @@ export default Articles
Articles.propTypes = {
data: PropTypes.shape({
- edges: PropTypes.array
+ edges: PropTypes.array,
+ limit: PropTypes.number,
+ setLimit: PropTypes.func
})
}
\ No newline at end of file
diff --git a/src/components/Articles/Articles.scss b/src/components/Articles/Articles.scss
index dc5681b..653fd75 100644
--- a/src/components/Articles/Articles.scss
+++ b/src/components/Articles/Articles.scss
@@ -56,6 +56,10 @@
text-align: center;
margin-bottom: 60px;
}
+ & .articles-loadMore {
+ text-align: center;
+ margin-bottom: 30px;
+ }
}
.dark {
diff --git a/src/components/Articles/Search/Search.js b/src/components/Articles/Search/Search.js
index bb6562d..654c276 100644
--- a/src/components/Articles/Search/Search.js
+++ b/src/components/Articles/Search/Search.js
@@ -2,7 +2,7 @@ import React from 'react'
import { navigate } from 'gatsby'
import PropTypes from 'prop-types'
-const Search = ({ allArticles, filterArticles, articlesLength, resultsLength, query, setQuery, setFiltredArticles }) => {
+const Search = ({ allArticles, filterArticles, articlesLength, resultsLength, query, setQuery, setFiltredArticles, setLimit }) => {
const handleInput = e => {
const query = e.target.value
if (query === '') {
@@ -14,6 +14,7 @@ const Search = ({ allArticles, filterArticles, articlesLength, resultsLength, qu
navigate(`/articles/?search=${query.trim()}`)
setQuery(query)
setFiltredArticles(filterArticles(allArticles))
+ setLimit(6)
}
return (
diff --git a/src/pages/articles.js b/src/pages/articles.js
index 707e1dc..1850539 100644
--- a/src/pages/articles.js
+++ b/src/pages/articles.js
@@ -53,7 +53,7 @@ const ArticlesPage = ({ data: { allMarkdownRemark: edges }, }) => {
{categories.map(({ node }, i) => )}
-
+
{query && query !== '' ? filtredArticles.length === 0 ?
Ничего не найдено
: null : null}
@@ -63,10 +63,9 @@ const ArticlesPage = ({ data: { allMarkdownRemark: edges }, }) => {
{query && query !== ''
- ? filtredArticles.length > 0 ? : null
- :
+ ? filtredArticles.length > 0 ? : null
+ :
}
- setLimit(limit + 2)}>load more
diff --git a/src/styles/global.scss b/src/styles/global.scss
index bf612b2..5763a7c 100644
--- a/src/styles/global.scss
+++ b/src/styles/global.scss
@@ -22,6 +22,14 @@
}
}
+.btn-loadMore {
+ background: none;
+ text-decoration: underline;
+ color: #6ab0f3;
+ cursor: pointer;
+ font-size: 15px;
+}
+
.tag-item {
margin-bottom: 13px;
margin-right: 5px;
diff --git a/src/templates/categoryTemplate.js b/src/templates/categoryTemplate.js
index ab9a3df..4862a91 100644
--- a/src/templates/categoryTemplate.js
+++ b/src/templates/categoryTemplate.js
@@ -14,7 +14,9 @@ import Offers from '../components/Offers/Offers'
const CategoryPage = ({ data: { allMarkdownRemark: edges }, pageContext: { title } }) => {
const { categories } = useCategoriesQuery()
const { siteMetadata: { siteUrl } } = useSiteMetadataQuery()
-
+
+ let [limit, setLimit] = React.useState(6)
+
return (
@@ -30,14 +32,14 @@ const CategoryPage = ({ data: { allMarkdownRemark: edges }, pageContext: { title
{categories.map(({ node }, i) => )}
-
Показано {edges.edges.length} из категории "{title}"
+
Найдено {edges.edges.length} из категории "{title}"
-
+
diff --git a/src/templates/tagTemplate.js b/src/templates/tagTemplate.js
index 198eeb6..caf9fd1 100644
--- a/src/templates/tagTemplate.js
+++ b/src/templates/tagTemplate.js
@@ -15,6 +15,8 @@ const TagPage = ({ data: { allMarkdownRemark: edges }, pageContext: { title } })
const { categories } = useCategoriesQuery()
const { siteMetadata: { siteUrl } } = useSiteMetadataQuery()
+ let [limit, setLimit] = React.useState(6)
+
return (
@@ -30,14 +32,14 @@ const TagPage = ({ data: { allMarkdownRemark: edges }, pageContext: { title } })
{categories.map(({ node }, i) => )}
-
Показано {edges.edges.length} по тегу "{title}"
+
Найдено {edges.edges.length} по тегу "{title}"
-
+