Browse Source

feat: add drag-model directive in Dialog

xiaoxian521 3 years ago
parent
commit
daa22af06e
6 changed files with 22 additions and 2 deletions
  1. 1 0
      package.json
  2. 1 0
      src/components/Dialog.js
  3. 2 0
      src/core/lazy_use.js
  4. 2 0
      src/core/use.js
  5. 4 2
      src/views/list/BasicList.vue
  6. 12 0
      yarn.lock

+ 1 - 0
package.json

@@ -29,6 +29,7 @@
     "vue": "^2.6.10",
     "vue-clipboard2": "^0.2.1",
     "vue-cropper": "0.4.9",
+    "vue-drags": "^1.0.0",
     "vue-i18n": "^8.17.4",
     "vue-quill-editor": "^3.0.6",
     "vue-router": "^3.1.2",

+ 1 - 0
src/components/Dialog.js

@@ -67,6 +67,7 @@ export default (Vue) => {
           delete modalProps.model
         }
         const ModalProps = Object.assign({}, modalModel && { model: modalModel } || {}, {
+          directives: modalProps.drag ? [{ name: 'drag-model' }] : [],
           attrs: Object.assign({}, {
             ...(modalProps.attrs || modalProps)
           }, {

+ 2 - 0
src/core/lazy_use.js

@@ -56,6 +56,7 @@ import MultiTab from '@/components/MultiTab'
 import PageLoading from '@/components/PageLoading'
 import PermissionHelper from '@/core/permission/permission'
 import './directives/action'
+import Drags from 'vue-drags'
 
 Vue.use(ConfigProvider)
 Vue.use(Layout)
@@ -114,5 +115,6 @@ Vue.use(MultiTab)
 Vue.use(PageLoading)
 Vue.use(PermissionHelper)
 Vue.use(VueCropper)
+Vue.use(Drags)
 
 process.env.NODE_ENV !== 'production' && console.warn('[antd-pro] NOTICE: Antd use lazy-load.')

+ 2 - 0
src/core/use.js

@@ -12,6 +12,7 @@ import MultiTab from '@/components/MultiTab'
 import PageLoading from '@/components/PageLoading'
 import PermissionHelper from '@/core/permission/permission'
 // import '@/components/use'
+import Drags from 'vue-drags'
 import './directives/action'
 
 VueClipboard.config.autoSetContainer = true
@@ -23,5 +24,6 @@ Vue.use(PageLoading)
 Vue.use(VueClipboard)
 Vue.use(PermissionHelper)
 Vue.use(VueCropper)
+Vue.use(Drags)
 
 process.env.NODE_ENV !== 'production' && console.warn('[antd-pro] WARNING: Antd now use fulled imported.')

+ 4 - 2
src/views/list/BasicList.vue

@@ -162,7 +162,8 @@ export default {
           title: '新增',
           width: 700,
           centered: true,
-          maskClosable: false
+          maskClosable: false,
+          drag: true
         })
     },
     edit (record) {
@@ -188,7 +189,8 @@ export default {
           title: '操作',
           width: 700,
           centered: true,
-          maskClosable: false
+          maskClosable: false,
+          drag: true
         })
     }
   }

+ 12 - 0
yarn.lock

@@ -11204,6 +11204,13 @@ vue-cropper@0.4.9:
   resolved "https://registry.npm.taobao.org/vue-cropper/download/vue-cropper-0.4.9.tgz#fe650f32516ecf29014bbd4a9079191c8dc5a5ae"
   integrity sha1-/mUPMlFuzykBS71KkHkZHI3Fpa4=
 
+vue-drags@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/vue-drags/-/vue-drags-1.0.0.tgz#199999ca8734270e24d4b44631c67b9b193e300f"
+  integrity sha512-Cys+Inz1s4emb8zKQg77CTZlMcn24AhOPO4vfbTHcuJ4bOwQ8kMhO3WgSkPc2Qb8jVXSKZ36CafDVp4blsqrjA==
+  dependencies:
+    vue "^2.6.14"
+
 vue-eslint-parser@^5.0.0:
   version "5.0.0"
   resolved "https://registry.npm.taobao.org/vue-eslint-parser/download/vue-eslint-parser-5.0.0.tgz?cache=0&sync_timestamp=1573306368916&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue-eslint-parser%2Fdownload%2Fvue-eslint-parser-5.0.0.tgz#00f4e4da94ec974b821a26ff0ed0f7a78402b8a1"
@@ -11332,6 +11339,11 @@ vue@^2.5.3:
   resolved "https://registry.npm.taobao.org/vue/download/vue-2.6.11.tgz#76594d877d4b12234406e84e35275c6d514125c5"
   integrity sha1-dllNh31LEiNEBuhONSdcbVFBJcU=
 
+vue@^2.6.14:
+  version "2.6.14"
+  resolved "https://registry.yarnpkg.com/vue/-/vue-2.6.14.tgz#e51aa5250250d569a3fbad3a8a5a687d6036e235"
+  integrity sha512-x2284lgYvjOMj3Za7kqzRcUSxBboHqtgRE2zlos1qWaOye5yUmHn42LB1250NJBLRwEcdrB0JRwyPTEPhfQjiQ==
+
 vuex@^3.1.1:
   version "3.6.2"
   resolved "https://registry.yarnpkg.com/vuex/-/vuex-3.6.2.tgz#236bc086a870c3ae79946f107f16de59d5895e71"