1
|
const FETCH_DETAIL_INFO = 'FETCH_DETAIL_INFO';
|
1
|
const FETCH_DETAIL_INFO = 'FETCH_DETAIL_INFO';
|
2
|
const UPDATE_ARTICLE_PRAISE_INFO = 'UPDATE_ARTICLE_PRAISE_INFO';
|
2
|
const UPDATE_ARTICLE_PRAISE_INFO = 'UPDATE_ARTICLE_PRAISE_INFO';
|
3
|
-const FETCH_RECOMMEND_ARTICLES = 'FETCH_RECOMMEND_ARTICLES';
|
3
|
+const FETCH_RECCOMMEND_ARTICLES = 'FETCH_RECCOMMEND_ARTICLES';
|
|
|
4
|
+const UPDATE_RECCOMMEND_ARTICLES_PRAISE = 'UPDATE_RECCOMMEND_ARTICLES_PRAISE';
|
4
|
|
5
|
|
5
|
import { UPDATE_ARTICLE_PRAISE } from './list/types';
|
6
|
import { UPDATE_ARTICLE_PRAISE } from './list/types';
|
6
|
|
7
|
|
|
@@ -34,6 +35,7 @@ export default function() { |
|
@@ -34,6 +35,7 @@ export default function() { |
34
|
if (res.code === 200) {
|
35
|
if (res.code === 200) {
|
35
|
commit(`article/articleList/${UPDATE_ARTICLE_PRAISE}`, {articleId, status}, {root: true});
|
36
|
commit(`article/articleList/${UPDATE_ARTICLE_PRAISE}`, {articleId, status}, {root: true});
|
36
|
commit(UPDATE_ARTICLE_PRAISE_INFO);
|
37
|
commit(UPDATE_ARTICLE_PRAISE_INFO);
|
|
|
38
|
+ commit(UPDATE_RECCOMMEND_ARTICLES_PRAISE, {articleId, status});
|
37
|
}
|
39
|
}
|
38
|
},
|
40
|
},
|
39
|
async fetchRecommendArticle({commit}, {articleId}) {
|
41
|
async fetchRecommendArticle({commit}, {articleId}) {
|
|
@@ -42,7 +44,7 @@ export default function() { |
|
@@ -42,7 +44,7 @@ export default function() { |
42
|
});
|
44
|
});
|
43
|
|
45
|
|
44
|
if (res.code === 200) {
|
46
|
if (res.code === 200) {
|
45
|
- commit(FETCH_RECOMMEND_ARTICLES, res.data);
|
47
|
+ commit(FETCH_RECCOMMEND_ARTICLES, res.data);
|
46
|
}
|
48
|
}
|
47
|
}
|
49
|
}
|
48
|
},
|
50
|
},
|
|
@@ -60,7 +62,25 @@ export default function() { |
|
@@ -60,7 +62,25 @@ export default function() { |
60
|
praiseCount: hasPraise === 'Y' ? praiseCount - 1 : praiseCount + 1
|
62
|
praiseCount: hasPraise === 'Y' ? praiseCount - 1 : praiseCount + 1
|
61
|
};
|
63
|
};
|
62
|
},
|
64
|
},
|
63
|
- [FETCH_RECOMMEND_ARTICLES](state, list = []) {
|
65
|
+ [UPDATE_RECCOMMEND_ARTICLES_PRAISE](state, {articleId, status}) {
|
|
|
66
|
+ let article = state.recommendArticleList.find(item => +item.articleId === +articleId);
|
|
|
67
|
+
|
|
|
68
|
+ if (article && article.articleId === parseInt(articleId, 10)) {
|
|
|
69
|
+ if (article.praiseCount === 0 && status === 0) {
|
|
|
70
|
+ article.praiseCount += 1;
|
|
|
71
|
+ article.hasPraised = 'Y';
|
|
|
72
|
+ } else if (article.praiseCount > 0) {
|
|
|
73
|
+ if (status === 0) {
|
|
|
74
|
+ article.praiseCount += 1;
|
|
|
75
|
+ article.hasPraised = 'Y';
|
|
|
76
|
+ } else {
|
|
|
77
|
+ article.praiseCount -= 1;
|
|
|
78
|
+ article.hasPraised = 'N';
|
|
|
79
|
+ }
|
|
|
80
|
+ }
|
|
|
81
|
+ }
|
|
|
82
|
+ },
|
|
|
83
|
+ [FETCH_RECCOMMEND_ARTICLES](state, list = []) {
|
64
|
state.recommendArticleList = list.map((item)=> {
|
84
|
state.recommendArticleList = list.map((item)=> {
|
65
|
let imageHeight = item.imageHeight;
|
85
|
let imageHeight = item.imageHeight;
|
66
|
let imageWidth = item.imageWidth;
|
86
|
let imageWidth = item.imageWidth;
|