12345678910111213141516171819202122232425 |
- import {func} from "@/uni_modules/uv-ui-tools/libs/function/test";
- import {injectLocal, provideLocal} from "@vueuse/core";
- import {numberToLetter} from "@/utils";
- const key = Symbol('QUESTION_OPTION_SERVICE')
- export const useProvideQuestionOptionFormatter = function (formatter, optionClass) {
- if (!func(formatter)) throw new Error('formatter must be a function')
- const options = {formatter, optionClass}
- provideLocal(key, options)
- return options
- }
- export const useInjectQuestionOptionFormatter = function () {
- // 提供了默认注入,默认注入是题库的组织格式
- return injectLocal(key, {
- formatter: (options) => {
- return options.map((opt, idx) => {
- const code = numberToLetter(idx)
- return {code, option: code + '、' + opt}
- })
- },
- optionClass: undefined
- })
- }
|