modal标题替换

This commit is contained in:
余菲 2022-05-24 18:02:23 +08:00
parent 516d98b94b
commit 32be584c98
2 changed files with 22 additions and 20 deletions

View File

@ -13,12 +13,9 @@
> >
<n-upload <n-upload
action="https://www.mocky.io/v2/5e4bafc63100007100d8b70f" action="https://www.mocky.io/v2/5e4bafc63100007100d8b70f"
:default-file-list="previewFileList"
list-type="image-card" list-type="image-card"
@preview="handlePreview"
/> />
<n-modal <n-modal
v-model:show="showModal"
preset="card" preset="card"
style="width: 600px" style="width: 600px"
title="头像" title="头像"
@ -153,10 +150,6 @@ export default defineComponent({
row: { row: {
type: Object, type: Object,
default: () => {} default: () => {}
},
title: {
type: String,
default: '添加用户'
} }
}, },
emits: { emits: {
@ -167,7 +160,7 @@ export default defineComponent({
setup(props, { emit }) { setup(props, { emit }) {
const getModalOptions = computed(() => { const getModalOptions = computed(() => {
return { return {
title: props.title, title: Object.keys(props.row).length === 0 ? '添加用户' : '编辑用户',
show: props.visible show: props.visible
} }
}) })

View File

@ -15,7 +15,7 @@
</n-card> </n-card>
</div> </div>
<!-- 新增编辑弹窗 --> <!-- 新增编辑弹窗 -->
<user-modal v-if="data.modalShow" v-model:visible="data.modalShow" :row="rowData" :title="modalTitle" /> <user-modal v-if="data.modalShow" v-model:visible="data.modalShow" :row="rowData" />
</template> </template>
<script> <script>
@ -24,7 +24,7 @@ import TableAction from '@/components/DataTable/tools/Action.vue'
import TableImage from '@/components/DataTable/tools/Image.vue' import TableImage from '@/components/DataTable/tools/Image.vue'
import TableTags from '@/components/DataTable/tools/Tags.vue' import TableTags from '@/components/DataTable/tools/Tags.vue'
import { getUserList } from '@/api/system/user/index.js' import { getUserList } from '@/api/system/user/index.js'
import { h, unref, ref } from 'vue' import { h, unref, toRefs } from 'vue'
import { reactive } from 'vue' import { reactive } from 'vue'
import UserModal from './components/UserModal.vue' import UserModal from './components/UserModal.vue'
export default { export default {
@ -74,7 +74,17 @@ export default {
align: 'center', align: 'center',
render(row) { render(row) {
return h(TableTags, { return h(TableTags, {
data: row.roles data: row.roles,
rowKey: 'name',
filters: [
{
key: '超级管理员',
label: '123',
color: {
textColor: 'red'
}
}
]
}) })
} }
}, },
@ -131,12 +141,12 @@ export default {
], ],
modalShow: false modalShow: false
}) })
const modalTitle = ref('添加用户') const modalData = reactive({
let rowData = reactive({}) rowData: {}
})
// //
function play(row) { function play(row) {
rowData = row modalData.rowData = row
modalTitle.value = '编辑用户'
console.log('编辑弹窗内容:', row) console.log('编辑弹窗内容:', row)
data.modalShow = true data.modalShow = true
} }
@ -153,18 +163,17 @@ export default {
return await getUserList(_params) return await getUserList(_params)
} }
function handleUser() { function handleUser() {
rowData = {} modalData.rowData = {}
modalTitle.value = '添加用户'
data.modalShow = true data.modalShow = true
} }
return { data, loadDataTable, handleUser, rowData, modalTitle } return { data, loadDataTable, handleUser, ...toRefs(modalData) }
}, },
methods: { methods: {
// //
deleteUsers() { deleteUsers() {
}, }
} }
} }