|
|
@@ -8,6 +8,7 @@
|
|
|
<question-card
|
|
|
v-if="item !== null"
|
|
|
:key="item.id"
|
|
|
+ :editable="ownQuestionIds.indexOf(item.id) !== -1"
|
|
|
:type="item.type"
|
|
|
:stem="item.stem"
|
|
|
:question-id="item.id"
|
|
|
@@ -22,7 +23,7 @@
|
|
|
|
|
|
<script>
|
|
|
import debounce from '@/utils/debounce'
|
|
|
-import { getCreatedQuestions, getQuestionList } from '@/server/question'
|
|
|
+import { getCreatedQuestionIds, getCreatedQuestions, getQuestionList } from '@/server/question'
|
|
|
import Pagination from '@/components/Pagination'
|
|
|
import { markdownToHTML } from '@/utils/markdown'
|
|
|
import QuestionCard from '@/views/quiz/components/QuestionCard'
|
|
|
@@ -62,6 +63,9 @@ export default {
|
|
|
inputStem: '',
|
|
|
questionList: [],
|
|
|
ownQuestionList: [],
|
|
|
+ // 该属性与上面属性不同之处在于所有id是一次全拿的
|
|
|
+ // List为分页获取,因此不能用于判断这个问题是否能够编辑
|
|
|
+ ownQuestionIds: [],
|
|
|
page: {},
|
|
|
|
|
|
// 模糊搜索时使用
|
|
|
@@ -70,6 +74,7 @@ export default {
|
|
|
},
|
|
|
mounted () {
|
|
|
this.fetchQuestionList()
|
|
|
+ this.fetchOwnQuestionIds()
|
|
|
},
|
|
|
methods: {
|
|
|
fetchQuestionList ({
|
|
|
@@ -89,6 +94,11 @@ export default {
|
|
|
this.page = page
|
|
|
})
|
|
|
},
|
|
|
+ fetchOwnQuestionIds () {
|
|
|
+ getCreatedQuestionIds()
|
|
|
+ .then(res => (this.ownQuestionIds = res))
|
|
|
+ .catch(err => this.$setErrorMessage(err.response.data.msg))
|
|
|
+ },
|
|
|
judgeIsSelected (question) {
|
|
|
return Boolean(this.selectedQuestions
|
|
|
.find(item => item.id === question.id))
|