Git Product home page Git Product logo

Comments (17)

buqiyuan avatar buqiyuan commented on May 27, 2024

直接写defaultValue是正常的 ?
你的 defaultValue 是一个原始值吗?方便的话,你可以给我一个最小复现的代码片段吗?

from vue3-antdv-admin.

eamd-wq avatar eamd-wq commented on May 27, 2024

直接写defaultValue是正常的 ? 你的 defaultValue 是一个原始值吗?方便的话,你可以给我一个最小复现的代码片段吗?

https://github.com/eamd-wq/vue3-antdv-admin

拉取这个项目运行
复现操作:系统管理>数据字典>新增>确定
文件路径:src\views\system\dict-type\formSchemas.ts

from vue3-antdv-admin.

buqiyuan avatar buqiyuan commented on May 27, 2024

🤔 啊这不是跟线上代码一样吗?没复现

QQ20240405-170359-HD.mp4

from vue3-antdv-admin.

eamd-wq avatar eamd-wq commented on May 27, 2024

https://github.com/eamd-wq/vue3-antdv-admin

刚刚网络有问题没有推送上去 你再看下

from vue3-antdv-admin.

buqiyuan avatar buqiyuan commented on May 27, 2024

OK,复现了,就是说 通过 componentProps 设置的 defaultValue 是有问题的,而直接声明在最外层的 schema 身上的 defaultValue 是正常的

from vue3-antdv-admin.

eamd-wq avatar eamd-wq commented on May 27, 2024

OK,复现了,就是说 通过 componentProps 设置的 defaultValue 是有问题的,而直接声明在最外层的 schema 身上的 defaultValue 是正常的

对的,但是 schema 身上的 defaultValue 也并非没问题,我又提交了一个代码 你可以对比下三个备注的区别

from vue3-antdv-admin.

eamd-wq avatar eamd-wq commented on May 27, 2024

OK,复现了,就是说 通过 componentProps 设置的 defaultValue 是有问题的,而直接声明在最外层的 schema 身上的 defaultValue 是正常的

对的,但是 schema 身上的 defaultValue 也并非没问题,我又提交了一个代码 你可以对比下三个备注的区别

import type { FormSchema } from '@/components/core/schema-form/';

const defaultValue = '备注信息1\n备注信息2\n备注信息3\n备注信息4\n备注信息5\n备注信息6';

export const baseSchemas: FormSchema<API.DictTypeDto>[] = [
{
field: 'name',
component: 'Input',
label: '字典名称',
rules: [{ required: true, type: 'string' }],
componentProps: {
defaultValue: '默认值测试',
},
},
{
field: 'code',
component: 'Input',
label: '字典编码',
rules: [{ required: true, type: 'string' }],
componentProps: {
defaultValue: 'test_default_value',
},
},
{
field: 'status',
label: '状态',
component: 'RadioGroup',
defaultValue: 1,
componentProps: {
options: [
{ label: '启用', value: 1 },
{ label: '禁用', value: 0 },
],
},
},
{
field: 'remark',
component: 'InputTextArea',
label: '备注',
colProps: {
span: 24,
},
componentProps: {
defaultValue,
},
},
{
field: 'remark',
component: 'InputTextArea',
label: '备注',
colProps: {
span: 24,
},
componentProps: {
autoSize: true,
defaultValue,
},
},
{
field: 'remark',
component: 'InputTextArea',
label: '备注',
colProps: {
span: 24,
},
defaultValue,
componentProps: {
autoSize: true,
},
},
];

代码退步上去 网络有点问题 这是这个文件我改动后的最终结果

from vue3-antdv-admin.

buqiyuan avatar buqiyuan commented on May 27, 2024

啊这,给你推荐一个便宜好用的梯子:https://tapfog.com/

from vue3-antdv-admin.

eamd-wq avatar eamd-wq commented on May 27, 2024

啊这,给你推荐一个便宜好用的梯子:https://tapfog.com/

哈哈

from vue3-antdv-admin.

eamd-wq avatar eamd-wq commented on May 27, 2024

啊这,给你推荐一个便宜好用的梯子:https://tapfog.com/

推上去了 梯子换了个节点

from vue3-antdv-admin.

buqiyuan avatar buqiyuan commented on May 27, 2024

兄die,修复了 autoSize 的问题,关于 defaultValue 这个还是统一直接设置在 schema 上吧!还是说什么情况下是必须设置到 components.defaultValue 上?

改这里就行了:

-onMounted(() => {
-  // 初始化表单默认值
-  setDefaultValue(formSchemasRef.value);
- });
+ // 初始化表单默认值
+ setDefaultValue(formSchemasRef.value);

from vue3-antdv-admin.

buqiyuan avatar buqiyuan commented on May 27, 2024

关于 autoSize 这个 bug,以下代码可以复现:

<template>
  <a-textarea v-model:value="inputValue" placeholder="Basic usage" auto-size />
</template>

<script lang="ts" setup>
  import { ref, onMounted } from 'vue';
  const inputValue = ref();

  onMounted(() => {
    inputValue.value = '出 Bug 啦!';
  });
</script>

感兴趣你可以研究一下~

from vue3-antdv-admin.

eamd-wq avatar eamd-wq commented on May 27, 2024
onMounted

在schema设置就可以 没有特殊场景
也就是和antd组件的声明周期有关 渲染后无法根据内容自适应高度 必须要在渲染前给值

from vue3-antdv-admin.

eamd-wq avatar eamd-wq commented on May 27, 2024

关于 autoSize 这个 bug,以下代码可以复现:

<template>
  <a-textarea v-model:value="inputValue" placeholder="Basic usage" auto-size />
</template>

<script lang="ts" setup>
  import { ref, onMounted } from 'vue';
  const inputValue = ref();

  onMounted(() => {
    inputValue.value = '出 Bug 啦!';
  });
</script>

感兴趣你可以研究一下~

你的nest项目和这个项目代码为何如此优雅 有什么诀窍吗 我技术成长遇到瓶颈了 我感觉我的水平写不出这种代码
原理啥的都懂 可能就是做不到这种优雅得拆分和设计

from vue3-antdv-admin.

eamd-wq avatar eamd-wq commented on May 27, 2024

你有wx交流群吗 一起交流一下

from vue3-antdv-admin.

buqiyuan avatar buqiyuan commented on May 27, 2024
  • 是当文本框值变化时 antdv 里面相关 watch 回调执行的顺序问题。
  • 兄die过誉了!我只能说:多看、多写,唯手熟尔~
  • 没有建群哦!有问题在 issue 反馈就好。

from vue3-antdv-admin.

eamd-wq avatar eamd-wq commented on May 27, 2024
  • 是当文本框值变化时 antdv 里面相关 watch 回调执行的顺序问题。
  • 兄die过誉了!我只能说:多看、多写,唯手熟尔~
  • 没有建群哦!有问题在 issue 反馈就好。
    牛牪犇

from vue3-antdv-admin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.