From 144dc28eca4532ecf1f3b3f2bbbdacaba1328ba3 Mon Sep 17 00:00:00 2001 From: "liu.huiying@ebiz-digits.com" Date: Fri, 14 Mar 2025 18:45:51 +0800 Subject: [PATCH 1/3] =?UTF-8?q?feat:app=E5=B5=8C=E5=A5=97h5=E9=9A=90?= =?UTF-8?q?=E8=97=8F=E5=A4=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/App.vue | 2 +- src/layouts/index.vue | 49 +++++++++++++++++++--------------------- src/main.ts | 6 ++--- src/views/Home/Index.vue | 35 ++++++++++++++-------------- 4 files changed, 43 insertions(+), 49 deletions(-) diff --git a/src/App.vue b/src/App.vue index ed3e316..96f5004 100644 --- a/src/App.vue +++ b/src/App.vue @@ -7,7 +7,7 @@ import utils from '@/assets/js/common'; onMounted(async() => { if (utils.getSessionStorage('xToken')) { // 隐藏/显示 header - appBridge.setHeaderShown(true); + appBridge.setHeaderShown(false); // 设置系统状态栏明暗主题 appBridge.setStatusBarStyle('light'); } diff --git a/src/layouts/index.vue b/src/layouts/index.vue index bac7f76..0cc86eb 100644 --- a/src/layouts/index.vue +++ b/src/layouts/index.vue @@ -59,32 +59,29 @@ const table = [ } ]; function tabPath(path) { - router.push({ - path - }); - // if (utils.getParameter('digitalYiliToken')) { - // const appToken = utils.getParameter('digitalYiliToken'); - // getUserInfo(appToken) - // .then((res) => { - // if (res.data) { - // utils.setSessionStorage('userInfo', res.data.data); - // router.push({ - // path - // }); - // } else { - // showFailToast( - // error.response.data?.message || error.data?.message || error.message || '服务器错误' - // ); - // } - // }) - // .catch((error) => { - // showFailToast(error?.response?.data?.message || error?.message || '服务器错误'); - // }); - // } else { - // router.push({ - // path - // }); - // } + if (utils.getParameter('digitalYiliToken')) { + const appToken = utils.getParameter('digitalYiliToken'); + getUserInfo(appToken) + .then((res) => { + if (res.data) { + utils.setSessionStorage('userInfo', res.data.data); + router.push({ + path + }); + } else { + showFailToast( + error.response.data?.message || error.data?.message || error.message || '服务器错误' + ); + } + }) + .catch((error) => { + showFailToast(error?.response?.data?.message || error?.message || '服务器错误'); + }); + } else { + router.push({ + path + }); + } } diff --git a/src/main.ts b/src/main.ts index a9ab12b..055b83b 100644 --- a/src/main.ts +++ b/src/main.ts @@ -29,7 +29,7 @@ router.beforeEach((to, from, next) => { if (to.query.digitalYiliToken) { utils.setSessionStorage('xToken', to.query.digitalYiliToken); } - appBridge.setTitle(to.meta.title as string); + // appBridge.setTitle(to.meta.title as string); // 设置禁止原生返回 appBridge.takeOverAndroidBack(); // 定义路由是否可以返回的判断 @@ -45,11 +45,9 @@ router.beforeEach((to, from, next) => { // 添加 Android 返回按钮监听方法 window.onAndroidBack = () => { if (routerCanGoBack()) { - console.log('h5返回') router.back(); } else { - console.log('app返回') - callAppGoBack(); // 调用 APP 的返回方法 + callAppGoBack(); } }; next(); diff --git a/src/views/Home/Index.vue b/src/views/Home/Index.vue index dafd7d5..91ca173 100644 --- a/src/views/Home/Index.vue +++ b/src/views/Home/Index.vue @@ -8,24 +8,23 @@ import { onMounted, ref } from 'vue'; // import { showFailToast } from 'vant'; const contentShow = ref(false); onMounted(async () => { - contentShow.value = true; - // if (utils.getSessionStorage('xToken')){ - // const appToken = utils.getParameter('digitalYiliToken'); - // getUserInfo(appToken).then((res) => { - // if (res.data) { - // contentShow.value = true; - // utils.setSessionStorage('userInfo', res.data.data); - // } else { - // contentShow.value = false; - // showFailToast(error.response.data?.message || error.data?.message || error.message || '服务器错误'); - // } - // }).catch((error) => { - // contentShow.value = false; - // showFailToast(error?.response?.data?.message || error?.message || '服务器错误'); - // }); - // } else { - // contentShow.value = true; - // } + if (utils.getSessionStorage('xToken')){ + const appToken = utils.getParameter('digitalYiliToken'); + getUserInfo(appToken).then((res) => { + if (res.data) { + contentShow.value = true; + utils.setSessionStorage('userInfo', res.data.data); + } else { + contentShow.value = false; + showFailToast(error.response.data?.message || error.data?.message || error.message || '服务器错误'); + } + }).catch((error) => { + contentShow.value = false; + showFailToast(error?.response?.data?.message || error?.message || '服务器错误'); + }); + } else { + contentShow.value = true; + } }); From 8c2d426421613dfdef67228a84332b4ec5fe8b66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=98=B1=E8=BE=BE?= Date: Fri, 14 Mar 2025 19:16:58 +0800 Subject: [PATCH 2/3] =?UTF-8?q?feat(Design):=20=E9=87=8D=E6=9E=84=E9=A2=98?= =?UTF-8?q?=E5=89=8D=E9=80=BB=E8=BE=91=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 YLInput 组件 - 新增 questionSteeingList 工具文件 - 新增 BeforeRadio、BeforeCheckbox 和 BeforeCompletion 组件 - 重构 QuestionBefore 组件,支持不同题型的逻辑配置 - 优化 QuestionAction 和 ChooseQuestion组件,增加 questionsInfo 参数 - 调整 NPS 和 Design 组件,以适应新的逻辑配置方式 --- components.d.ts | 9 +- src/assets/css/main.scss | 8 + src/components/YLInput.vue | 70 +++ src/components/YLPicker.vue | 8 +- src/components/YLSelect.vue | 5 +- src/fonts/demo.css | 4 +- src/fonts/moblie/demo.css | 4 +- src/layouts/utils.js | 38 +- src/main.ts | 11 +- src/request/api/modules/survey.ts | 4 +- src/request/axios/index.ts | 8 +- src/utils/questionSteeingList.js | 86 +++ src/utils/request.js | 8 +- src/views/Design/Index.vue | 7 +- .../ActionCompoents/QuestionAction.vue | 25 +- .../BeforComponent/BeforeCheckbox.vue | 91 ++++ .../BeforComponent/BeforeCompletion.vue | 20 + .../BeforComponent/BeforeRadio.vue | 99 ++++ .../QuestionItemAction/QuestionBefore.vue | 359 ++++++------- .../Design/components/ChooseQuestion.vue | 10 +- src/views/Design/components/Questions/NPS.vue | 2 +- src/views/Home/Index.vue | 4 +- .../Home/components/LastSurvey/Index.vue | 2 +- src/views/Home/components/Market/Index.vue | 4 +- .../Market/components/MarketItem.vue | 56 +- .../Market/components/svgs/MarketItemSvg.svg | 31 ++ .../Market/components/svgs/contentSvg.svg | 21 + src/views/Survey/views/Create/Index.vue | 18 +- src/views/Survey/views/Preview/Index.vue | 490 ++++++++++-------- src/views/Survey/views/Publish/Index.vue | 2 +- 30 files changed, 950 insertions(+), 554 deletions(-) create mode 100644 src/components/YLInput.vue create mode 100644 src/utils/questionSteeingList.js create mode 100644 src/views/Design/components/ActionCompoents/components/QuestionItemAction/BeforComponent/BeforeCheckbox.vue create mode 100644 src/views/Design/components/ActionCompoents/components/QuestionItemAction/BeforComponent/BeforeCompletion.vue create mode 100644 src/views/Design/components/ActionCompoents/components/QuestionItemAction/BeforComponent/BeforeRadio.vue create mode 100644 src/views/Home/components/Market/components/svgs/MarketItemSvg.svg create mode 100644 src/views/Home/components/Market/components/svgs/contentSvg.svg diff --git a/components.d.ts b/components.d.ts index 8649f3a..407e547 100644 --- a/components.d.ts +++ b/components.d.ts @@ -2,12 +2,13 @@ // @ts-nocheck // Generated by unplugin-vue-components // Read more: https://github.com/vuejs/core/pull/3399 -export {}; +export {} /* prettier-ignore */ declare module 'vue' { export interface GlobalComponents { Contenteditable: typeof import('./src/components/contenteditable.vue')['default'] + ElInput: typeof import('element-plus/es')['ElInput'] ElOption: typeof import('element-plus/es')['ElOption'] ElSelect: typeof import('element-plus/es')['ElSelect'] RichText: typeof import('./src/components/RichText.vue')['default'] @@ -22,7 +23,10 @@ declare module 'vue' { VanCol: typeof import('vant/es')['Col'] VanDivider: typeof import('vant/es')['Divider'] VanField: typeof import('vant/es')['Field'] + VanGrid: typeof import('vant/es')['Grid'] + VanGridItem: typeof import('vant/es')['GridItem'] VanIcon: typeof import('vant/es')['Icon'] + VanNavBar: typeof import('vant/es')['NavBar'] VanPicker: typeof import('vant/es')['Picker'] VanPopup: typeof import('vant/es')['Popup'] VanRadio: typeof import('vant/es')['Radio'] @@ -31,11 +35,10 @@ declare module 'vue' { VanSearch: typeof import('vant/es')['Search'] VanStepper: typeof import('vant/es')['Stepper'] VanSwitch: typeof import('vant/es')['Switch'] - VanTab: typeof import('vant/es')['Tab'] VanTabbar: typeof import('vant/es')['Tabbar'] VanTabbarItem: typeof import('vant/es')['TabbarItem'] - VanTabs: typeof import('vant/es')['Tabs'] YLCascader: typeof import('./src/components/YLCascader.vue')['default'] + YLInput: typeof import('./src/components/YLInput.vue')['default'] YLPicker: typeof import('./src/components/YLPicker.vue')['default'] YLSelect: typeof import('./src/components/YLSelect.vue')['default'] } diff --git a/src/assets/css/main.scss b/src/assets/css/main.scss index 97365b9..cbfa9ed 100644 --- a/src/assets/css/main.scss +++ b/src/assets/css/main.scss @@ -12,6 +12,14 @@ a, transition: 0.4s; } +.theme-color { + color: $theme-color; +} + +.theme-background { + background: $theme-color; +} + .ml10 { margin-left: 10px; } diff --git a/src/components/YLInput.vue b/src/components/YLInput.vue new file mode 100644 index 0000000..4d0cfe7 --- /dev/null +++ b/src/components/YLInput.vue @@ -0,0 +1,70 @@ + + + + + diff --git a/src/components/YLPicker.vue b/src/components/YLPicker.vue index 7e5cf8f..c5108d0 100644 --- a/src/components/YLPicker.vue +++ b/src/components/YLPicker.vue @@ -170,8 +170,8 @@ const getMaxDateLimit = computed(() => { props.format ); const tempStr = '0000-12-31 23:59:59'; - const result = - props.maxDate.length !== 0 && thisMax.length > props.maxDate.length + const result + = props.maxDate.length !== 0 && thisMax.length > props.maxDate.length ? thisMax.slice(0, props.maxDate.length) + tempStr.slice(props.maxDate.length) : thisMax; return result.slice(0, props.format.length); @@ -194,8 +194,8 @@ function onChange({ selectedValues, columnIndex }) { renderMinuteColumns, renderSecondColumns ]; - updateColumns[columnIndex] && - updateColumns[columnIndex](changeValue, getMinDateLimit.value, getMaxDateLimit.value, false); + updateColumns[columnIndex] + && updateColumns[columnIndex](changeValue, getMinDateLimit.value, getMaxDateLimit.value, false); } // 渲染全部列 diff --git a/src/components/YLSelect.vue b/src/components/YLSelect.vue index f89fb02..d15c9a9 100644 --- a/src/components/YLSelect.vue +++ b/src/components/YLSelect.vue @@ -18,6 +18,8 @@
+ + @@ -84,6 +86,7 @@ export default defineComponent({ display: inline-block; font-size: 16px; /* 增加字体大小 */ line-height: 1.5; /* 增加行高 */ + //margin-botton: 10px; } .yl-select-label { @@ -97,6 +100,6 @@ export default defineComponent({ diff --git a/src/fonts/demo.css b/src/fonts/demo.css index 0e97475..7df7d71 100644 --- a/src/fonts/demo.css +++ b/src/fonts/demo.css @@ -4,11 +4,11 @@ src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834'); src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') - format('embedded-opentype'), + format('embedded-opentype'), url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'), url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'), url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') - format('svg'); + format('svg'); src: url('//at.alicdn.com/t/c/font_4841764_vat2jbvw3q.woff2?t=1741575060989') format('woff2'), url('//at.alicdn.com/t/c/font_4841764_vat2jbvw3q.woff?t=1741575060989') format('woff'), diff --git a/src/fonts/moblie/demo.css b/src/fonts/moblie/demo.css index 18e8077..12ec742 100644 --- a/src/fonts/moblie/demo.css +++ b/src/fonts/moblie/demo.css @@ -4,11 +4,11 @@ src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834'); src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') - format('embedded-opentype'), + format('embedded-opentype'), url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'), url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'), url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') - format('svg'); + format('svg'); } .logo { diff --git a/src/layouts/utils.js b/src/layouts/utils.js index f84cd22..7b11928 100644 --- a/src/layouts/utils.js +++ b/src/layouts/utils.js @@ -46,13 +46,13 @@ function showModal(options) { * @param {*} data * @returns */ -const canPlanetPublishPSM = function (data) { +const canPlanetPublishPSM = function(data) { let isFb = true; let content = ''; let title = '题目设置未完成'; const incompleteQuestionList = []; - data.questions && - data.questions.forEach((s) => { + data.questions + && data.questions.forEach((s) => { if (s.question_type === 101 && s.config.price_gradient.length <= 0) { isFb = false; content = 'psm题目未完成设置,请设置价格区间后投放'; @@ -77,15 +77,15 @@ const canPlanetPublishPSM = function (data) { * @param {*} data * @returns */ -const canPlanetPublishMxdAndHotArea = function (data) { +const canPlanetPublishMxdAndHotArea = function(data) { let isFb = true; let content = ''; const qSteams = []; const incompleteQuestionList = []; let type = 0; let title = '题目设置未完成'; - data.questions && - data.questions.forEach((s) => { + data.questions + && data.questions.forEach((s) => { if (s.question_type === 105 && s.config.design_version <= 0) { isFb = false; content = 'maxdiff题目未完成设置,请生成设计后投放'; @@ -124,14 +124,14 @@ const canPlanetPublishMxdAndHotArea = function (data) { * @param {*} data * @returns */ -const canPlanetPublish3D = function (data) { +const canPlanetPublish3D = function(data) { { let canFB = true; let content = ''; const qSteams = []; let title = ''; - data.questions && - data.questions.forEach((s) => { + data.questions + && data.questions.forEach((s) => { if (QUESTION_TYPE.contains(s.question_type)) { try { if (s.config.is_three_dimensions && !s.config.scene) { @@ -161,15 +161,15 @@ const canPlanetPublish3D = function (data) { let content = ''; const qSteams = []; let title = ''; - data.questions && - data.questions.forEach((s) => { + data.questions + && data.questions.forEach((s) => { if (QUESTION_TYPE.contains(s.question_type)) { try { if (s.config.is_three_dimensions && s.config.is_binding_goods) { const wares = []; const _sceneInformation = s.config.scene_information; - const sceneInformation = - typeof _sceneInformation === 'string' + const sceneInformation + = typeof _sceneInformation === 'string' ? JSON.parse(_sceneInformation) : _sceneInformation; sceneInformation.shelves.forEach((shelf) => { @@ -221,14 +221,14 @@ const canPlanetPublish3D = function (data) { * @param {*} data * @returns */ -const canPlanetPublishImage = function (data) { +const canPlanetPublishImage = function(data) { { let canFB = true; let content = ''; const qSteams = []; let title = ''; - data.questions && - data.questions.forEach((s) => { + data.questions + && data.questions.forEach((s) => { if (s.question_type === 13) { try { if (s.options.length <= 0 || s.options.some((y) => y.length <= 0)) { @@ -323,8 +323,8 @@ function canPublishRandom(data, publishType) { if (!isValidated) { errors.push({ message: - field.message || - `请填写“${random.title}”中第${index + 1}组“随机题组”的“${field.name}”` + field.message + || `请填写“${random.title}”中第${index + 1}组“随机题组”的“${field.name}”` }); } }); @@ -378,7 +378,7 @@ function canPublishRandom(data, publishType) { // return false; // } -export const canPlanetPublish = async function (sn, publishType) { +export const canPlanetPublish = async function(sn, publishType) { const parsedPublishType = !publishType ? 2 : publishType; const num = window.location.href.indexOf('code='); diff --git a/src/main.ts b/src/main.ts index 055b83b..27e432c 100644 --- a/src/main.ts +++ b/src/main.ts @@ -3,8 +3,6 @@ import 'amfe-flexible'; import { createApp } from 'vue'; import { createPinia } from 'pinia'; import App from './App.vue'; -import 'vant/lib/index.css'; - import router from './router'; import utils from '@/assets/js/common'; // 2. 引入组件样式 @@ -12,9 +10,11 @@ import 'vant/lib/index.css'; import '@/style/utils.scss'; import appBridge from '@/assets/js/appBridge'; import VConsole from 'vconsole'; -let vconsole; +const app = createApp(App); + if (import.meta.env.VITE_APP_ENV !== 'production') { - vconsole = new VConsole(); + const vconsole = new VConsole(); + app.use(vconsole); } // 添加 TypeScript 类型声明,在文件顶部添加 @@ -45,14 +45,13 @@ router.beforeEach((to, from, next) => { // 添加 Android 返回按钮监听方法 window.onAndroidBack = () => { if (routerCanGoBack()) { - router.back(); + router.back(); } else { callAppGoBack(); } }; next(); }); -const app = createApp(App); app.use(createPinia()); app.use(router); app.mount('#app'); diff --git a/src/request/api/modules/survey.ts b/src/request/api/modules/survey.ts index c665a46..24a3eba 100644 --- a/src/request/api/modules/survey.ts +++ b/src/request/api/modules/survey.ts @@ -1,2 +1,2 @@ -export const surveyQuestion = - 'https://yls-api-uat.dctest.digitalyili.com/api/console/surveys/RWNK9BYp/questions'; +export const surveyQuestion + = 'https://yls-api-uat.dctest.digitalyili.com/api/console/surveys/RWNK9BYp/questions'; diff --git a/src/request/axios/index.ts b/src/request/axios/index.ts index 5cce295..8d7e34c 100644 --- a/src/request/axios/index.ts +++ b/src/request/axios/index.ts @@ -38,10 +38,10 @@ service.interceptors.request.use( service.interceptors.response.use( (response) => { if ( - response.status === 200 || - response.status === 201 || - response.status === 202 || - response.status === 204 + response.status === 200 + || response.status === 201 + || response.status === 202 + || response.status === 204 ) { if (response.config.method === 'put') { // message.success('保存中...'); diff --git a/src/utils/questionSteeingList.js b/src/utils/questionSteeingList.js new file mode 100644 index 0000000..3af67ce --- /dev/null +++ b/src/utils/questionSteeingList.js @@ -0,0 +1,86 @@ +const groupOptions = [ + { + label: '选项', + value: 0 + } + // { + // label: '分组', + // value: 1 + // // disabled: true + // } +]; +const settingIfOptions = [ + { label: 'IF', value: 'if' }, + { label: 'Always', value: 'always' } +]; +const settingAndOptions = [ + { label: 'AND', value: 'and' }, + { label: 'OR', value: 'or' } +]; +const answerOptions = [ + { label: '为空', value: 0 }, + { label: '不为空', value: 1 } +]; +const chooseOptions = [ + { label: '被选中', value: 1 }, + { label: '未被选中', value: 0 } +]; + +const symbolOptions = [ + { + label: '=', + value: '=' + }, + { + label: '≠', + value: '≠' + }, + { + label: '>', + value: '>' + }, + { + label: '≥', + value: '>' + }, + { + label: '<', + value: '<' + }, + { + label: '≤', + value: '≤' + } +]; + +// 包含 +// 不包含 +// +// 不是 +const completionOptions = [ + { + label: '包含', + value: '包含' + }, + { + label: '不包含', + value: '不包含' + }, + { + label: '是', + value: '是' + }, + { + label: '不是', + value: '不是' + } +]; +export { + groupOptions, + settingIfOptions, + settingAndOptions, + answerOptions, + symbolOptions, + chooseOptions, + completionOptions +}; diff --git a/src/utils/request.js b/src/utils/request.js index 1bf015c..e260159 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -44,10 +44,10 @@ service.interceptors.request.use( service.interceptors.response.use( (response) => { if ( - response.status === 200 || - response.status === 201 || - response.status === 202 || - response.status === 204 + response.status === 200 + || response.status === 201 + || response.status === 202 + || response.status === 204 ) { if (response.config.method === 'put') { // message.success('保存中...'); diff --git a/src/views/Design/Index.vue b/src/views/Design/Index.vue index 05f73ed..e0dedef 100644 --- a/src/views/Design/Index.vue +++ b/src/views/Design/Index.vue @@ -14,6 +14,7 @@ :questions="questionInfo.questions" :index="index" :chooseQuestionId="chooseQuestionId" + :questionsInfo="questionInfo" @get-choose-question-id="getChooseQuestionId" @move="emitFun.move" @copy="emitFun.copy" @@ -239,10 +240,10 @@ const chooseQuestionIndex = ref(-1); const questionInfo = computed(() => store.questionsInfo.value); // 自动更新 题型 watch( - () => questionInfo.value.questions[chooseQuestionIndex.value], + () => questionInfo.value.questions, (newVal) => { if (newVal) { - // saveQueItem(questionInfo.value.logics, [newVal]); + saveQueItem(questionInfo.value.logics, newVal); // 确保保存最新的数据 } }, { deep: true } @@ -417,6 +418,8 @@ const emitFun = { saveQueItem(null, [item]); }, logics: (item) => { + // console.log(questionInfo.value.logics[); + // return false; saveQueItem(questionInfo.value.logics, [item]); } }; diff --git a/src/views/Design/components/ActionCompoents/QuestionAction.vue b/src/views/Design/components/ActionCompoents/QuestionAction.vue index dc5bc16..a8ac18e 100644 --- a/src/views/Design/components/ActionCompoents/QuestionAction.vue +++ b/src/views/Design/components/ActionCompoents/QuestionAction.vue @@ -124,7 +124,12 @@
- + {{ questionsInfo.logics[2].logic }} +
@@ -132,19 +137,13 @@ + diff --git a/src/views/Design/components/ActionCompoents/components/QuestionItemAction/BeforComponent/BeforeCompletion.vue b/src/views/Design/components/ActionCompoents/components/QuestionItemAction/BeforComponent/BeforeCompletion.vue new file mode 100644 index 0000000..26b11f4 --- /dev/null +++ b/src/views/Design/components/ActionCompoents/components/QuestionItemAction/BeforComponent/BeforeCompletion.vue @@ -0,0 +1,20 @@ + + + diff --git a/src/views/Design/components/ActionCompoents/components/QuestionItemAction/BeforComponent/BeforeRadio.vue b/src/views/Design/components/ActionCompoents/components/QuestionItemAction/BeforComponent/BeforeRadio.vue new file mode 100644 index 0000000..c9c8e36 --- /dev/null +++ b/src/views/Design/components/ActionCompoents/components/QuestionItemAction/BeforComponent/BeforeRadio.vue @@ -0,0 +1,99 @@ + + + diff --git a/src/views/Design/components/ActionCompoents/components/QuestionItemAction/QuestionBefore.vue b/src/views/Design/components/ActionCompoents/components/QuestionItemAction/QuestionBefore.vue index e5bd59f..d15ec75 100644 --- a/src/views/Design/components/ActionCompoents/components/QuestionItemAction/QuestionBefore.vue +++ b/src/views/Design/components/ActionCompoents/components/QuestionItemAction/QuestionBefore.vue @@ -5,78 +5,84 @@ >
@@ -92,14 +98,14 @@
- - 删除 - + + + + + + + + @@ -112,14 +118,12 @@ @@ -356,19 +287,21 @@ const logicIf = (value, index) => { } .question-before { + width: 100%; + & .if { flex: none; - width: 90px; + width: 100%; } & .question { - flex: none; - width: 210px; + //flex: none; + //width: 210px; } & .group { - flex: none; - width: 75px; + //flex: none; + //width: 75px; } & .answer { diff --git a/src/views/Design/components/ChooseQuestion.vue b/src/views/Design/components/ChooseQuestion.vue index d59344c..dee0e04 100644 --- a/src/views/Design/components/ChooseQuestion.vue +++ b/src/views/Design/components/ChooseQuestion.vue @@ -21,6 +21,7 @@ diff --git a/src/views/Survey/views/Preview/Index.vue b/src/views/Survey/views/Preview/Index.vue index 682ae2e..706470e 100644 --- a/src/views/Survey/views/Preview/Index.vue +++ b/src/views/Survey/views/Preview/Index.vue @@ -19,42 +19,77 @@ -