ZBLOG

取消 批量打标

要将穿梭框(a-transfer)组件在页面加载时自动显示,并且保留“确认”和“取消”按钮,你需要做一些小改动。可以通过设置 open 的初始值为 true 来实现自动打开模态框,同时确保在模态框中添加相应的按钮。以下是修改后的代码:

<template>
  <div class="singleMarking">
    <div>
      <a-button class="cancel-btn" @click="handleCancel">取消</a-button>
    </div>
    <div class="form-tool">
      <!-- 批量打标按钮可以移除或隐藏 -->
      <a-modal v-model:open="open" title="批量打标" @ok="handleOk" width="500px">
        <a-transfer
          v-model:target-keys="targetKeys"
          v-model:selected-keys="selectedKeys"
          :data-source="dataSource"
          :titles="[ '待选状态', '已选状态' ]"
          :render="renderItem"
          @change="handleChange"
        />
        <template #footer>
          <a-button @click="handleCancel">取消</a-button>
          <a-button type="primary" @click="handleOk">确认</a-button>
        </template>
      </a-modal>
    </div>
  </div>
</template>

<script setup>
import { ref, reactive, h } from 'vue';

const formState = reactive({});
const data = ref([]);
const open = ref(true); // 初始值设为 true,使模态框在页面加载时显示
const targetKeys = ref([]);
const selectedKeys = ref([]);

// 模拟的数据源
const dataSource = [
  { key: '1', title: '状态1', color: '#f50' },
  { key: '2', title: '状态2', color: '#2db7f5' },
  { key: '3', title: '状态3', color: '#87d068' },
  { key: '4', title: '状态4', color: '#108ee5' },
  { key: '5', title: '状态5', color: '#ffbf00' },
  { key: '6', title: '状态6', color: '#ff7f50' },
  { key: '7', title:'状态7', color:'#8a2be2'},
  { key:'8',title:'状态8',color:'#a52a2a'},
  {key:'9',title:'状态9',color:'#deb887'},
  {key:'10',title:'状态10',color:'#5f9ea0'}
];

const handleCancel = () => {
  open.value = false; // 隐藏模态框
};

const handleOk = () => {
  open.value = false; // 隐藏模态框
  console.log('已选择的状态:', targetKeys.value);
};

const renderItem = (item) => {
   return h('span',{ style:{ color:item.color }}, item.title);
};

const handleChange = (nextTargetKeys, direction, moveKeys) => {
   console.log('targetKeys:', nextTargetKeys);
   console.log('direction:', direction);
   console.log('moveKeys:', moveKeys);
};
</script>

<style lang="less">
.singleMarking {
   /* 在这里添加你的样式 */
}
.cancel-btn {
   /* 自定义取消按钮样式 */
}
.form-tool {
   /* 工具区域样式 */
}
.margin-right-10 {
   margin-right: 10px;
}
.button-light-blue {
   background-color: #add8e6; /* 自定义蓝色 */
}
</style>

修改说明:

  1. 初始打开模态框:将 open 的初始值设置为 true,使得页面加载后模态框会自动显示。

  2. 添加自定义底部按钮:使用了 <template #footer> 自定义了模态框的底部,这里包含了“确认”和“取消”按钮。

这样,穿梭框功能就可以在页面加载时直接展示,并且用户可以通过“确认”和“取消”来进行相应操作。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=21728

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?