@xizs/nuxt-antui 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -50,9 +50,6 @@ export const FormComs:{
50
50
  return <ARadioGroup v-model:value={form[item.key as string]} {...item.bind}></ARadioGroup>
51
51
  },
52
52
 
53
- // uploadImg: (form: any, item: FormItemType) => {
54
- // return <UploadImg v-model:value={form[item.key as string]} {...item.bind}></UploadImg>
55
- // }
56
53
  }
57
54
 
58
55
  export default defineComponent({
@@ -78,7 +75,9 @@ export default defineComponent({
78
75
  default: () => ({})
79
76
  }
80
77
  },
81
- setup(props,{expose}){
78
+ setup(props, { expose }) {
79
+
80
+ const {t:$t} = useI18n()
82
81
 
83
82
  let thisRef = ref(null)
84
83
  let formData = ref(props.defaultFormData)
@@ -125,7 +124,7 @@ export default defineComponent({
125
124
 
126
125
 
127
126
 
128
- return ()=><AForm ref={thisRef} model={formData.value} rules={rules.value} label-col={{ span: 6 }} wrapper-col={{ span: 16 }}>
127
+ return ()=><AForm ref={thisRef} model={formData.value} rules={rules.value} label-col={{ span: 8 }} wrapper-col={{ span: 16 }}>
129
128
  {/* {JSON.stringify(formData.value)} */}
130
129
  {
131
130
  ADParse(props.form, formData.value).map(item => {
@@ -133,7 +132,12 @@ export default defineComponent({
133
132
  return typeof item.is === 'function'? item.is(formData.value) :
134
133
  FormComs[item.is](formData.value,item)
135
134
  }
136
- return <AFormItem label={item.label} key={item.key} name={item.key} {...item.bind} class={{'hidden':item.show===false}}>
135
+ return <AFormItem
136
+ key={item.key} name={item.key} {...item.bind} class={{ 'hidden': item.show === false }}
137
+ v-slots={{
138
+ label:()=><span class="whitespace-break-spaces">{$t(item.label)}</span>
139
+ }}
140
+ >
137
141
  {
138
142
  typeof item.is === 'function'? item.is(formData.value) :
139
143
  FormComs[item.is](formData.value,item)
@@ -26,11 +26,11 @@ let dateRange = defineComponent({
26
26
 
27
27
  let value = watchRef(ref([]),(nv,ov)=>{
28
28
  if(nv?.length>0){
29
- props.form[props.item.key[0]] = nv[0].format('YYYY-MM-DD 00:00:00')
30
- props.form[props.item.key[1]] = nv[1].format('YYYY-MM-DD 23:59:59')
29
+ props.form[props.item.key[0] as string] = nv[0].format('YYYY-MM-DD 00:00:00')
30
+ props.form[props.item.key[1] as string] = nv[1].format('YYYY-MM-DD 23:59:59')
31
31
  }else{
32
- props.form[props.item.key[0]] = ''
33
- props.form[props.item.key[1]] = ''
32
+ props.form[props.item.key[0] as string] = ''
33
+ props.form[props.item.key[1] as string] = ''
34
34
  }
35
35
  })
36
36
  const rangePresets = ref([
@@ -76,7 +76,8 @@ export type TablePropsType = {
76
76
  },
77
77
  footerOptions?: {
78
78
  show: boolean
79
- }
79
+ },
80
+ 'v-slots'?:any
80
81
  }
81
82
 
82
83
  export type AttributeType = {
@@ -85,6 +86,7 @@ export type AttributeType = {
85
86
  page:number,
86
87
  pageSize: number,
87
88
  tableData: any[],
89
+ form:any
88
90
  }
89
91
 
90
92
  export const FormTableProps = {
@@ -120,7 +122,7 @@ export const FormTableProps = {
120
122
  enableSelection: false,
121
123
  columns: [],
122
124
  data: () => [],
123
- rowKey:(row:any)=>any
125
+ rowKey:(row:any)=>{}
124
126
  })
125
127
  },
126
128
  footerOptions: {
@@ -132,10 +134,11 @@ export const FormTableProps = {
132
134
  })
133
135
  },
134
136
  attribute:{
135
- type:Object as ()=> AttributeType
137
+ type: Object as () => AttributeType,
138
+ default:()=>{}
136
139
  },
137
140
  control:{
138
- type:Object,
141
+ type:Object as () => any,
139
142
  required:true
140
143
  },
141
144
  }
@@ -146,6 +149,7 @@ export default defineComponent({
146
149
  setup(props,{slots}) {
147
150
  const {t:$t} = useI18n()
148
151
 
152
+ //form 初始化
149
153
  const form = ref({})
150
154
  props.form?.forEach((item) => {
151
155
  form.value[item.key] = item.value
@@ -153,6 +157,11 @@ export default defineComponent({
153
157
  props.attribute.form = form.value
154
158
  const metaForm = JSON.parse(JSON.stringify(form.value))
155
159
 
160
+ //table初始化
161
+ props.table.columns?.forEach((item) => {
162
+ item.title = $t(item.title)
163
+ })
164
+
156
165
  let pagination =reactive({
157
166
  page:1,
158
167
  pageSize:20,
@@ -161,7 +170,7 @@ export default defineComponent({
161
170
 
162
171
 
163
172
  const tableData = asyncReactive<any[]>(async ()=>{
164
- let res = await props.table.data({...form.value,...pagination})
173
+ let res:any = await props.table.data({...form.value,...pagination})
165
174
  if(Array.isArray(res)){
166
175
  res = {
167
176
  list:res,
@@ -184,7 +193,7 @@ export default defineComponent({
184
193
 
185
194
  const rowSelection = {
186
195
  selectedRowKeys: props.attribute?.selectKeys,
187
- onChange: (keys,rows)=>{
196
+ onChange: (keys:any,rows:any)=>{
188
197
  props.attribute!.selectKeys.splice(0,props.attribute!.selectKeys.length,...keys)
189
198
  props.attribute!.selectItems.splice(0,props.attribute!.selectItems.length,...rows)
190
199
  }
@@ -216,10 +225,10 @@ export default defineComponent({
216
225
  row-selection={props.table.enableSelection?rowSelection:null}
217
226
  rowKey={props.table.rowKey??((row,key)=>key)}
218
227
  loading={tableData.loading}
219
- scroll={{x: true}}
228
+ // scroll={{x: true}}
220
229
  columns={props.table.columns}
221
230
  pagination={false}
222
- sticky={tableData.value.length>0}
231
+ // sticky={tableData.value.length>0}
223
232
  v-slots={{
224
233
  headerCell: ({ title,column }: any) => (
225
234
  <div style={{'white-space': 'nowrap'}}>
@@ -256,7 +265,7 @@ export default defineComponent({
256
265
  pageSizeOptions={['20','50','100']}
257
266
  onShowSizeChange={(current, size) => {
258
267
  pagination.pageSize = size
259
- pagination.page = current
268
+ pagination.page = 1
260
269
  tableData.load()
261
270
  }}
262
271
  />
@@ -27,7 +27,7 @@
27
27
  <div class=" flex items-center">
28
28
  <div >
29
29
  <a-dropdown >
30
- <div class="h-[30px] leading-[30px]">{{ useAdmin().value?.username ?? 'Admin'}}</div>
30
+ <div class="h-[30px] leading-[30px] cursor-pointer">{{ useAdmin().value?.username ?? 'Admin'}}</div>
31
31
  <template #overlay>
32
32
  <a-menu>
33
33
  <a-menu-item @click="()=>singOut()">
@@ -84,6 +84,7 @@ export const FormModal = (params: FormModalParamsType) => {
84
84
 
85
85
  let control = NormalModal(h(defineComponent({
86
86
  setup() {
87
+ const { t: $t } = useI18n()
87
88
  let formRef = ref(null)
88
89
  let loading = ref(false)
89
90
 
@@ -101,16 +102,15 @@ export const FormModal = (params: FormModalParamsType) => {
101
102
  })
102
103
 
103
104
  return () => h(AModal, {
104
- title: params.title,
105
+ title: $t(params.title),
105
106
  width: params.width,
106
- okText: '提交',
107
- cancelText: '取消',
107
+ okText: $t('提交'),
108
+ cancelText: $t('取消'),
108
109
  confirmLoading: loading.value,
109
110
  onOk: async () => {
110
111
  await submit()
111
112
  control.close()
112
113
  }
113
-
114
114
  }, h(Form, {
115
115
  ref: formRef,
116
116
  form: params.form,
@@ -129,13 +129,13 @@ export const MModal = {
129
129
 
130
130
  export const Confirm = {
131
131
  delete: () => {
132
- const { t: $t } = useI18n()
132
+ // const { t: $t } = useI18n()
133
133
  return new Promise((resolve, reject) => {
134
134
  Modal.confirm({
135
- title: $t('确认删除'),
136
- content: $t('确认删除该条数据吗?'),
137
- okText: $t('确定'),
138
- cancelText: $t('取消'),
135
+ title: ('确认删除'),
136
+ content: ('确认删除该条数据吗?'),
137
+ okText: ('确定'),
138
+ cancelText: ('取消'),
139
139
  onOk: () => {
140
140
  resolve(true)
141
141
  },
@@ -9,7 +9,9 @@ export const FormTable = (props: TablePropsType) => {
9
9
  selectItems: [],
10
10
  selectKeys: [],
11
11
  page: 1,
12
- pageSize: 10
12
+ pageSize: 10,
13
+ tableData: [],
14
+ form: {}
13
15
  })
14
16
 
15
17
  const control = {
@@ -28,7 +30,7 @@ export const TablePage = (props: TablePropsType) => {
28
30
 
29
31
  return {
30
32
  ...TableParams,
31
- com: h(ACard, { class: "absolute top-0 left-0 right-0 bottom-0 h-full", bodyStyle: "height:100%" }, TableParams.com)
33
+ com: h(ACard, { class: "absolute top-0 left-0 right-0 bottom-0 h-full", bodyStyle: { height: '100%' } }, TableParams.com)
32
34
 
33
35
  }
34
36
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@xizs/nuxt-antui",
3
3
  "type": "module",
4
- "version": "0.0.4",
4
+ "version": "0.0.5",
5
5
  "main": "./nuxt.config.ts",
6
6
  "scripts": {
7
7
  "dev": "nuxi dev .playground",
@@ -15,7 +15,7 @@
15
15
  "@ant-design-vue/nuxt": "1.4.6",
16
16
  "@nuxtjs/i18n": "9.5.4",
17
17
  "@tailwindcss/vite": "^4.1.3",
18
- "@xizs/nuxt-base": "^0.0.4",
18
+ "@xizs/nuxt-base": "0.0.4",
19
19
  "ant-design-vue": ">=4",
20
20
  "nuxt": "^3.16.2",
21
21
  "tailwindcss": "^4.0.14",