Skip to content

Commit e51f2dc

Browse files
committed
refactor: refine defaultModal format
1 parent 1c4790a commit e51f2dc

File tree

7 files changed

+12
-25
lines changed

7 files changed

+12
-25
lines changed

dist/VueFinalModal.esm.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/VueFinalModal.esm.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/VueFinalModal.umd.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/VueFinalModal.umd.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

example/src/App.vue

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,9 @@
2626
<h2 class="text-3xl py-2">Stop before open:</h2>
2727
<v-stop-before-open></v-stop-before-open>
2828
<h2 class="text-3xl py-2">Dynamic modal</h2>
29-
<v-dynamic-modal></v-dynamic-modal>
29+
<v-dynamic></v-dynamic>
3030

31+
<modals-container></modals-container>
3132
<div v-for="i in 100" :key="i">{{ i }}</div>
3233
</div>
3334
</template>

example/src/components/basic/VDynamicModal.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export default {
2222
inheritAttrs: false,
2323
methods: {
2424
close() {
25-
this.$emit('input', false)
25+
this.$emit('update:modelValue', false)
2626
}
2727
}
2828
}

lib/PluginCore.js

Lines changed: 5 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@ function assignOptions(component, options) {
1212

1313
function createVfm(options) {
1414
let vfm
15-
const PREFIX = '_dynamic_modal_'
16-
const generateId = ((index = 0) => () => (index++).toString())()
1715

1816
return function() {
1917
vfm = {
@@ -25,27 +23,15 @@ function createVfm(options) {
2523
case 'object':
2624
{
2725
const defaultModal = {
26+
value: true,
27+
id: Symbol('dynamicModal'),
2828
component: options.componentName,
2929
bind: {},
3030
slots: {},
31-
on: {}
31+
on: {},
32+
params: args[0]
3233
}
33-
modal = Object.assign(defaultModal, modal)
34-
const id = generateId()
35-
this.dynamicModals.push(
36-
shallowReactive({
37-
value: true,
38-
id,
39-
...modal,
40-
component: modal.component,
41-
slots: modal.slots,
42-
bind: {
43-
name: PREFIX + id,
44-
...modal.bind
45-
},
46-
params: args[0]
47-
})
48-
)
34+
this.dynamicModals.push(shallowReactive(Object.assign(defaultModal, modal)))
4935
}
5036
break
5137
}

0 commit comments

Comments
 (0)