qj-happy-common-zhongjian 1.0.27
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.
- package/.babelrc +12 -0
- package/.eslintrc.js +25 -0
- package/.postcssrc.js +9 -0
- package/.prettierrc.js +7 -0
- package/.project +37 -0
- package/README.md +5 -0
- package/gulpfile.js +20 -0
- package/package.json +18 -0
- package/src/api/apimanage.js +146 -0
- package/src/api/common/index.js +192 -0
- package/src/api/login.js +160 -0
- package/src/api/shopFbu.js +515 -0
- package/src/api/upload.js +8 -0
- package/src/assets/20201111165611.png +0 -0
- package/src/assets/2wm.jpg +0 -0
- package/src/assets/404_images/404.png +0 -0
- package/src/assets/404_images/404_1.png +0 -0
- package/src/assets/404_images/404_cloud.png +0 -0
- package/src/assets/Hy.png +0 -0
- package/src/assets/WeChat.png +0 -0
- package/src/assets/banner.png +0 -0
- package/src/assets/chuizi.png +0 -0
- package/src/assets/css/theme/index.min.004178.css +1 -0
- package/src/assets/css/theme/index.min.00c0dc.css +1 -0
- package/src/assets/css/theme/index.min.1E87F0.css +1 -0
- package/src/assets/css/theme/index.min.1cac43.css +1 -0
- package/src/assets/css/theme/index.min.409eff-.css +1 -0
- package/src/assets/css/theme/index.min.409eff.css +1 -0
- package/src/assets/css/theme/index.min.48B1E0.css +1 -0
- package/src/assets/css/theme/index.min.54b2d3.css +1 -0
- package/src/assets/css/theme/index.min.F00E1F.css +1 -0
- package/src/assets/css/theme/index.min.FC9041.css +1 -0
- package/src/assets/css/theme/index.min.aa0808.css +1 -0
- package/src/assets/css/theme/index.min.b79f77.css +1 -0
- package/src/assets/css/theme/index.min.c21a1b.css +1 -0
- package/src/assets/css/theme/index.min.ec001a.css +1 -0
- package/src/assets/css/theme/index.min.f4a338.css +1 -0
- package/src/assets/css/theme/index.min.f53415.css +1 -0
- package/src/assets/css/theme/index.min.ffffff.css +1 -0
- package/src/assets/er_bg.png +0 -0
- package/src/assets/homePage/home1.png +0 -0
- package/src/assets/homePage/home2.png +0 -0
- package/src/assets/homePage/home3.png +0 -0
- package/src/assets/homePage/home4.png +0 -0
- package/src/assets/homePage/home5.png +0 -0
- package/src/assets/homePage/home6.png +0 -0
- package/src/assets/homePage/home7.png +0 -0
- package/src/assets/homePage/home8.png +0 -0
- package/src/assets/homePage//347/233/256/345/275/225/347/273/223/346/236/204_03.png +0 -0
- package/src/assets/homePage//347/233/256/345/275/225/347/273/223/346/236/204_05.png +0 -0
- package/src/assets/homePage//347/233/256/345/275/225/347/273/223/346/236/204_10.png +0 -0
- package/src/assets/homePage//347/233/256/345/275/225/347/273/223/346/236/204_12.png +0 -0
- package/src/assets/homePage//347/233/256/345/275/225/347/273/223/346/236/204_13.png +0 -0
- package/src/assets/homePage//347/233/256/345/275/225/347/273/223/346/236/204_17.png +0 -0
- package/src/assets/homePage//347/233/256/345/275/225/347/273/223/346/236/204_18.png +0 -0
- package/src/assets/homePage//347/233/256/345/275/225/347/273/223/346/236/204_19.png +0 -0
- package/src/assets/hot.png +0 -0
- package/src/assets/info.jpg +0 -0
- package/src/assets/info.png +0 -0
- package/src/assets/logo.png +0 -0
- package/src/assets/nav/admin-hover.png +0 -0
- package/src/assets/nav/admin.png +0 -0
- package/src/assets/nav/info.png +0 -0
- package/src/assets/nav/logout-hover.png +0 -0
- package/src/assets/nav/logout.png +0 -0
- package/src/assets/nav/set.png +0 -0
- package/src/assets/nav/tool.png +0 -0
- package/src/assets/nav/user.png +0 -0
- package/src/assets/nav_lab.png +0 -0
- package/src/assets/newerwei.png +0 -0
- package/src/assets/nopic.jpg +0 -0
- package/src/assets/user.png +0 -0
- package/src/assets/user_img.png +0 -0
- package/src/assets//345/233/276/345/261/202 20.png +0 -0
- package/src/components/Bounced/index.vue +145 -0
- package/src/components/Breadcrumb/index.vue +71 -0
- package/src/components/Checkbox/index.vue +53 -0
- package/src/components/Hamburger/index.vue +48 -0
- package/src/components/Logistics/logic.vue +186 -0
- package/src/components/ScrollBar/index.vue +60 -0
- package/src/components/Sticky/index.vue +76 -0
- package/src/components/SvgIcon/index.vue +42 -0
- package/src/components/ThemePicker/index.vue +242 -0
- package/src/components/Tinymce/components/editorImage.vue +95 -0
- package/src/components/Tinymce/index.vue +166 -0
- package/src/components/Tinymce/plugins.js +7 -0
- package/src/components/Tinymce/toolbar.js +6 -0
- package/src/components/TreeTable/customEval.js +44 -0
- package/src/components/TreeTable/eval.js +29 -0
- package/src/components/TreeTable/index.vue +124 -0
- package/src/components/TreeTable/readme.md +89 -0
- package/src/components/TreeTableApi/customEval.js +49 -0
- package/src/components/TreeTableApi/eval.js +29 -0
- package/src/components/TreeTableApi/index.vue +124 -0
- package/src/components/TreeTableApi/readme.md +89 -0
- package/src/components/Upload/singleImage.vue +123 -0
- package/src/components/Upload/singleImage2.vue +118 -0
- package/src/components/Upload/singleImage3.vue +138 -0
- package/src/components/Upload/upload.vue +295 -0
- package/src/components/workOrderList/index.vue +158 -0
- package/src/dependencies.js +119 -0
- package/src/iconShop/demo.css +539 -0
- package/src/iconShop/demo_index.html +8445 -0
- package/src/iconShop/iconfont.css +1451 -0
- package/src/iconShop/iconfont.eot +0 -0
- package/src/iconShop/iconfont.js +1 -0
- package/src/iconShop/iconfont.json +2522 -0
- package/src/iconShop/iconfont.svg +1070 -0
- package/src/iconShop/iconfont.ttf +0 -0
- package/src/iconShop/iconfont.woff +0 -0
- package/src/iconShop/iconfont.woff2 +0 -0
- package/src/iconfont/demo.css +539 -0
- package/src/iconfont/demo_index.html +5276 -0
- package/src/iconfont/iconfont.css +905 -0
- package/src/iconfont/iconfont.eot +0 -0
- package/src/iconfont/iconfont.js +1 -0
- package/src/iconfont/iconfont.json +1563 -0
- package/src/iconfont/iconfont.svg +692 -0
- package/src/iconfont/iconfont.ttf +0 -0
- package/src/iconfont/iconfont.woff +0 -0
- package/src/iconfont/iconfont.woff2 +0 -0
- package/src/icons/index.js +9 -0
- package/src/icons/svg/documentation.svg +1 -0
- package/src/icons/svg/example.svg +1 -0
- package/src/icons/svg/eye.svg +1 -0
- package/src/icons/svg/form.svg +1 -0
- package/src/icons/svg/password.svg +1 -0
- package/src/icons/svg/table.svg +1 -0
- package/src/icons/svg/tree.svg +1 -0
- package/src/icons/svg/user.svg +1 -0
- package/src/lang/e.js +49 -0
- package/src/lang/en.js +49 -0
- package/src/lang/zh.js +49 -0
- package/src/main.js +36 -0
- package/src/permission.js +257 -0
- package/src/permissionForMall.backup.js +374 -0
- package/src/permissionForMall.js +374 -0
- package/src/preset.js +67 -0
- package/src/router/_import_common.js +2 -0
- package/src/router/_import_development.js +1 -0
- package/src/router/_import_production.js +1 -0
- package/src/store/getters.js +39 -0
- package/src/store/index.js +18 -0
- package/src/store/modules/app.js +30 -0
- package/src/store/modules/menu.js +82 -0
- package/src/store/modules/user.js +11376 -0
- package/src/styles/element-ui.scss +1345 -0
- package/src/styles/index.scss +167 -0
- package/src/styles/mixin.scss +27 -0
- package/src/styles/pc-ui.scss +1032 -0
- package/src/styles/scrollBar.scss +22 -0
- package/src/styles/sidebar.scss +124 -0
- package/src/styles/transition.scss +32 -0
- package/src/styles/variables.scss +45 -0
- package/src/styles/wf-ui.scss +87 -0
- package/src/utils/auth.js +57 -0
- package/src/utils/dom.js +12 -0
- package/src/utils/getQueryString.js +5 -0
- package/src/utils/import.js +5 -0
- package/src/utils/index.js +355 -0
- package/src/utils/interceptor.js +34 -0
- package/src/utils/menu.js +116 -0
- package/src/utils/proapp.js +35 -0
- package/src/utils/query.js +26 -0
- package/src/utils/request.js +362 -0
- package/src/utils/routeMapping.js +40 -0
- package/src/utils/routeMapping.json +310 -0
- package/src/utils/utils.js +84 -0
- package/src/utils/validate.js +102 -0
- package/src/views/404.vue +72 -0
- package/src/views/Layout.vue +106 -0
- package/src/views/imgSwiper/index.vue +35 -0
- package/src/views/layout/Layout.vue +176 -0
- package/src/views/layout/assets/close.png +0 -0
- package/src/views/layout/assets/logo.png +0 -0
- package/src/views/layout/assets/logo_s.png +0 -0
- package/src/views/layout/assets/open.png +0 -0
- package/src/views/layout/components/AppMain.vue +20 -0
- package/src/views/layout/components/Footer.vue +22 -0
- package/src/views/layout/components/LeftNavbar.vue +265 -0
- package/src/views/layout/components/NavMenu.vue +15 -0
- package/src/views/layout/components/Navbar.vue +646 -0
- package/src/views/layout/components/Sidebar/SidebarItem.vue +113 -0
- package/src/views/layout/components/Sidebar/index.vue +193 -0
- package/src/views/layout/components/index.js +20 -0
- package/src/views/layout/theme/darkBlue/Layout.vue +140 -0
- package/src/views/layout/theme/darkBlue/assets/229649024644998808.png +0 -0
- package/src/views/layout/theme/darkBlue/assets/_20181026154207.png +0 -0
- package/src/views/layout/theme/darkBlue/assets/close.png +0 -0
- package/src/views/layout/theme/darkBlue/assets/f-brand.png +0 -0
- package/src/views/layout/theme/darkBlue/assets/f-reward.png +0 -0
- package/src/views/layout/theme/darkBlue/assets/f-tel.png +0 -0
- package/src/views/layout/theme/darkBlue/assets/info.jpg +0 -0
- package/src/views/layout/theme/darkBlue/assets/info.png +0 -0
- package/src/views/layout/theme/darkBlue/assets/logo.png +0 -0
- package/src/views/layout/theme/darkBlue/assets/logo1.png +0 -0
- package/src/views/layout/theme/darkBlue/assets/logo_1.png +0 -0
- package/src/views/layout/theme/darkBlue/assets/open.png +0 -0
- package/src/views/layout/theme/darkBlue/assets/test.jpg +0 -0
- package/src/views/layout/theme/darkBlue/assets/user.png +0 -0
- package/src/views/layout/theme/darkBlue/components/AppMain.vue +38 -0
- package/src/views/layout/theme/darkBlue/components/Footer.vue +148 -0
- package/src/views/layout/theme/darkBlue/components/LeftNavbar(/345/261/225/347/244/272/345/205/250/351/203/250/350/217/234/345/215/225).vue +448 -0
- package/src/views/layout/theme/darkBlue/components/LeftNavbar.3.vue +191 -0
- package/src/views/layout/theme/darkBlue/components/LeftNavbar.vue +466 -0
- package/src/views/layout/theme/darkBlue/components/Navbar.vue +200 -0
- package/src/views/layout/theme/darkBlue/components/Sidebar/SidebarItem.vue +72 -0
- package/src/views/layout/theme/darkBlue/components/Sidebar/index.vue +49 -0
- package/src/views/layout/theme/darkBlue/components/index.js +16 -0
- package/src/views/layout-default/Layout.vue +134 -0
- package/src/views/layout-default/assets/close.png +0 -0
- package/src/views/layout-default/assets/logo.png +0 -0
- package/src/views/layout-default/assets/logo_s.png +0 -0
- package/src/views/layout-default/assets/open.png +0 -0
- package/src/views/layout-default/components/AppMain.vue +19 -0
- package/src/views/layout-default/components/Footer.vue +22 -0
- package/src/views/layout-default/components/LeftNavbar.vue +160 -0
- package/src/views/layout-default/components/Navbar.vue +295 -0
- package/src/views/layout-default/components/Sidebar/SidebarItem.vue +67 -0
- package/src/views/layout-default/components/Sidebar/index.vue +59 -0
- package/src/views/layout-default/components/index.js +4 -0
- package/src/views/layout-default/theme/darkBlue/Layout.vue +140 -0
- package/src/views/layout-default/theme/darkBlue/assets/229649024644998808.png +0 -0
- package/src/views/layout-default/theme/darkBlue/assets/_20181026154207.png +0 -0
- package/src/views/layout-default/theme/darkBlue/assets/close.png +0 -0
- package/src/views/layout-default/theme/darkBlue/assets/f-brand.png +0 -0
- package/src/views/layout-default/theme/darkBlue/assets/f-reward.png +0 -0
- package/src/views/layout-default/theme/darkBlue/assets/f-tel.png +0 -0
- package/src/views/layout-default/theme/darkBlue/assets/info.jpg +0 -0
- package/src/views/layout-default/theme/darkBlue/assets/info.png +0 -0
- package/src/views/layout-default/theme/darkBlue/assets/logo.png +0 -0
- package/src/views/layout-default/theme/darkBlue/assets/logo1.png +0 -0
- package/src/views/layout-default/theme/darkBlue/assets/logo_1.png +0 -0
- package/src/views/layout-default/theme/darkBlue/assets/open.png +0 -0
- package/src/views/layout-default/theme/darkBlue/assets/test.jpg +0 -0
- package/src/views/layout-default/theme/darkBlue/assets/user.png +0 -0
- package/src/views/layout-default/theme/darkBlue/components/AppMain.vue +38 -0
- package/src/views/layout-default/theme/darkBlue/components/Footer.vue +148 -0
- package/src/views/layout-default/theme/darkBlue/components/LeftNavbar.vue +465 -0
- package/src/views/layout-default/theme/darkBlue/components/Navbar.vue +200 -0
- package/src/views/layout-default/theme/darkBlue/components/Sidebar/SidebarItem.vue +70 -0
- package/src/views/layout-default/theme/darkBlue/components/Sidebar/index.vue +49 -0
- package/src/views/layout-default/theme/darkBlue/components/index.js +16 -0
- package/src/views/pc/Internationalization.vue +80 -0
- package/src/views/pc/default/Layout.vue +413 -0
- package/src/views/pc/default/LayoutCard.vue +405 -0
- package/src/views/pc/default/assets/2001.png +0 -0
- package/src/views/pc/default/assets/a13.png +0 -0
- package/src/views/pc/default/assets/about.png +0 -0
- package/src/views/pc/default/assets/af3a58da5c4d1ddfb31e1b0e7b6f798.png +0 -0
- package/src/views/pc/default/assets/ans_er.png +0 -0
- package/src/views/pc/default/assets/dllgwap.png +0 -0
- package/src/views/pc/default/assets/f-brand.png +0 -0
- package/src/views/pc/default/assets/f-reward.png +0 -0
- package/src/views/pc/default/assets/f-tel.png +0 -0
- package/src/views/pc/default/assets/flex.scss +100 -0
- package/src/views/pc/default/assets/footer_img1.png +0 -0
- package/src/views/pc/default/assets/footer_img2.png +0 -0
- package/src/views/pc/default/assets/footer_img3.png +0 -0
- package/src/views/pc/default/assets/footer_img4.png +0 -0
- package/src/views/pc/default/assets/huiyuan.png +0 -0
- package/src/views/pc/default/assets/hyzx.png +0 -0
- package/src/views/pc/default/assets/icp.png +0 -0
- package/src/views/pc/default/assets/kywwap.png +0 -0
- package/src/views/pc/default/assets/logo-gray.png +0 -0
- package/src/views/pc/default/assets/logo.png +0 -0
- package/src/views/pc/default/assets/logo_ucc.png +0 -0
- package/src/views/pc/default/assets/peisong.png +0 -0
- package/src/views/pc/default/assets/shangjia.png +0 -0
- package/src/views/pc/default/assets/shouhou.png +0 -0
- package/src/views/pc/default/assets/xinshou.png +0 -0
- package/src/views/pc/default/assets/ymlogo.png +0 -0
- package/src/views/pc/default/assets/yunmoLogo.png +0 -0
- package/src/views/pc/default/assets//345/233/276/345/261/202 20.png +0 -0
- package/src/views/pc/default/footer-modules/DgFooter/images/icon-hhyj.png +0 -0
- package/src/views/pc/default/footer-modules/DgFooter/images/icon-hhyj@2x.png +0 -0
- package/src/views/pc/default/footer-modules/DgFooter/images/icon-hyzx.png +0 -0
- package/src/views/pc/default/footer-modules/DgFooter/images/icon-hyzx@2x.png +0 -0
- package/src/views/pc/default/footer-modules/DgFooter/images/icon-plqq.png +0 -0
- package/src/views/pc/default/footer-modules/DgFooter/images/icon-plqq@2x.png +0 -0
- package/src/views/pc/default/footer-modules/DgFooter/images/icon-ppbz.png +0 -0
- package/src/views/pc/default/footer-modules/DgFooter/images/icon-ppbz@2x.png +0 -0
- package/src/views/pc/default/footer-modules/DgFooter/index.vue +179 -0
- package/src/views/pc/default/footer-modules/DgFooter/indexSDX.vue +187 -0
- package/src/views/pc/default/footer-modules/footer.vue +172 -0
- package/src/views/pc/default/footer-modules/footerAns.vue +168 -0
- package/src/views/pc/default/footer-modules/footerDM.vue +254 -0
- package/src/views/pc/default/footer-modules/footerDefault.vue +267 -0
- package/src/views/pc/default/footer-modules/footerDefaultA.vue +270 -0
- package/src/views/pc/default/footer-modules/footerDefaultNew.vue +201 -0
- package/src/views/pc/default/footer-modules/footerHDB.vue +153 -0
- package/src/views/pc/default/footer-modules/footerHy.vue +63 -0
- package/src/views/pc/default/footer-modules/footerKYW.vue +163 -0
- package/src/views/pc/default/footer-modules/footerNew.vue +117 -0
- package/src/views/pc/default/footer-modules/footerayd.vue +85 -0
- package/src/views/pc/default/footer-modules/ymFooter.vue +155 -0
- package/src/views/pc/default/footer-modules/zgl.vue +251 -0
- package/src/views/pc/default/header-modules/DgHeader/Logo.vue +57 -0
- package/src/views/pc/default/header-modules/DgHeader/Search.vue +135 -0
- package/src/views/pc/default/header-modules/DgHeader/Settleup.vue +46 -0
- package/src/views/pc/default/header-modules/DgHeader/images/logo.png +0 -0
- package/src/views/pc/default/header-modules/DgHeader/index.vue +38 -0
- package/src/views/pc/default/header-modules/active.vue +177 -0
- package/src/views/pc/default/header-modules/header.vue +98 -0
- package/src/views/pc/default/header-modules/headerA.vue +142 -0
- package/src/views/pc/default/header-modules/headerFLPT.vue +157 -0
- package/src/views/pc/default/header-modules/headerNew.vue +122 -0
- package/src/views/pc/default/header-modules/headerSDX.vue +304 -0
- package/src/views/pc/default/header-modules/headerStyle2.vue +174 -0
- package/src/views/pc/default/header-modules/headerStyle3.vue +191 -0
- package/src/views/pc/default/header-modules/headerStyle4.vue +164 -0
- package/src/views/pc/default/header-modules/headerStyleAns.vue +401 -0
- package/src/views/pc/default/header-modules/headerStyleDefalut.vue +209 -0
- package/src/views/pc/default/header-modules/headerStyleKYW.vue +436 -0
- package/src/views/pc/default/header-modules/headerayd.vue +187 -0
- package/src/views/pc/default/header-modules/index.vue +466 -0
- package/src/views/pc/default/header-modules/ymHeader.vue +292 -0
- package/src/views/pc/default/header-modules/ysHeader.vue +249 -0
- package/src/views/pc/default/header-modules/zgl.vue +855 -0
- package/src/views/pc/default/leftMenu-modules/leftMenu-logo.vue +193 -0
- package/src/views/pc/default/leftMenu-modules/leftMenu-style2.vue +206 -0
- package/src/views/pc/default/leftMenu-modules/leftMenu-style3.vue +207 -0
- package/src/views/pc/default/leftMenu-modules/leftMenu-style4.vue +192 -0
- package/src/views/pc/default/leftMenu-modules/leftMenu.vue +183 -0
- package/src/views/pc/default/leftMenu-modules/leftMenuDefault.vue +212 -0
- package/src/views/pc/default/leftMenu-modules/leftMenuDefaultEn.vue +214 -0
- package/src/views/pc/default/leftMenu-modules/leftMenuDefaultFLPT.vue +220 -0
- package/src/views/pc/default/leftMenu-modules/leftMenuDefaultayd.vue +220 -0
- package/src/views/pc/default/nav-modules/nav.vue +52 -0
- package/src/views/pc/default/nav-modules/navAns.vue +60 -0
- package/src/views/pc/default/top-modules/DgTopShortcut/index.vue +177 -0
- package/src/views/pc/default/top-modules/Toplg.vue +281 -0
- package/src/views/pc/default/top-modules/topA.vue +137 -0
- package/src/views/pc/default/top-modules/topAns.vue +262 -0
- package/src/views/pc/default/top-modules/topBar.vue +305 -0
- package/src/views/pc/default/top-modules/topDefault.vue +244 -0
- package/src/views/pc/default/top-modules/topDefaultDM.vue +197 -0
- package/src/views/pc/default/top-modules/topDefaultNew.vue +272 -0
- package/src/views/pc/default/top-modules/topFLPT.vue +197 -0
- package/src/views/pc/default/top-modules/topHDB.vue +478 -0
- package/src/views/pc/default/top-modules/topKYW.vue +258 -0
- package/src/views/pc/default/top-modules/topNew.vue +98 -0
- package/src/views/pc/default/top-modules/topSDX.vue +298 -0
- package/src/views/pc/default/top-modules/topSimple.vue +248 -0
- package/src/views/pc/default/top-modules/topSimpleHy.vue +256 -0
- package/src/views/pc/default/top-modules/topUcc.vue +265 -0
- package/src/views/pc/default/top-modules/topayd.vue +170 -0
- package/src/views/pc/default/top-modules/ymTop.vue +299 -0
- package/src/views/pc/default/top-modules/zgltop.vue +500 -0
- package/src/views/routerView.vue +9 -0
- package/src/views/templates/components/temp-select.vue +80 -0
- package/src/views/templates/components/temp-upload.vue +234 -0
- package/src/views/templates/readme.md +2 -0
- package/src/views/templates/templateInput.vue +417 -0
- package/src/views/templates/templateReadme.html +589 -0
- package/src/views/templates/templateReadme.md +620 -0
- package/src/views/templates/templateTable.vue +2071 -0
- package/src/views/templates/templateTableData.vue +1883 -0
- package/src/views/templates/templateUi/templateTableContent.vue +187 -0
- package/src/views/treeTemplate/index.vue +559 -0
- package/src/views/treeTemplate/treeTemplate.md +274 -0
- package/src/views/uploadDialog/index copy.vue +352 -0
- package/src/views/uploadDialog/index.vue +558 -0
- package/src/views/uploadDialog/indexOlay.vue +582 -0
- package/src/views/uploadDialog/indexPM.vue +578 -0
- package/src/views/uploadDialog/indexUpload.vue +543 -0
- package/src/views/uploadDialog/readme.md +45 -0
@@ -0,0 +1,274 @@
|
|
1
|
+
|
2
|
+
####treeTemplate
|
3
|
+
>template都是基于element-ui模板进行封装的
|
4
|
+
一、搜索栏 temInput
|
5
|
+
>**temInput**是一个Array,里面包含多个对象
|
6
|
+
>暂且支持类型:text、select、date、daterange、remoteSelect(下拉框的远程搜索)
|
7
|
+
|
8
|
+
{
|
9
|
+
label:'标题',//可选参数
|
10
|
+
type:'text',//类型 暂且支持text/select/data/daterange/autocomplete 类型同element一致
|
11
|
+
name:'name', //参数名称
|
12
|
+
value:'',//参数值,默认为空
|
13
|
+
placeholder:"请输入..." //可选参数,提示用语
|
14
|
+
}
|
15
|
+
|
16
|
+
注意:
|
17
|
+
type == select
|
18
|
+
参数属性多一个options
|
19
|
+
type == daterange
|
20
|
+
参数属性name:"startDate,endDate"
|
21
|
+
type === textMore
|
22
|
+
表示多个
|
23
|
+
{
|
24
|
+
type: "textMore",
|
25
|
+
label: "价格区间",
|
26
|
+
children: [
|
27
|
+
{
|
28
|
+
name: "projectMinprice",
|
29
|
+
placeholder: "请输入最小价格",
|
30
|
+
value: ""
|
31
|
+
},
|
32
|
+
{
|
33
|
+
name: "projectMaxprice",
|
34
|
+
placeholder: "请输入最大价格",
|
35
|
+
value: ""
|
36
|
+
}
|
37
|
+
]
|
38
|
+
},
|
39
|
+
type=== autocomplete //表示text可远程搜索
|
40
|
+
{
|
41
|
+
type: "autocomplete",
|
42
|
+
name: "classtreeName",
|
43
|
+
label: "搜索",
|
44
|
+
placeholder: "请输入产品编号",
|
45
|
+
restaurants: [
|
46
|
+
{ value: "三全鲜食(北新泾店)", address: "长宁区新渔路144号" },
|
47
|
+
],
|
48
|
+
value: ""
|
49
|
+
},
|
50
|
+
|
51
|
+
temInput的按钮操作
|
52
|
+
属性名称为btnArray:[]
|
53
|
+
{
|
54
|
+
type:'primary',//按钮类型,同element-ui的一致
|
55
|
+
id:'query',//操作的id id的类型query/search,add
|
56
|
+
label:"搜索",
|
57
|
+
url:"",//搜索的url暂且是定义的全局
|
58
|
+
}
|
59
|
+
当id == 'add',表示需要新增模板
|
60
|
+
需要添加属性
|
61
|
+
template:{
|
62
|
+
type: "json", //json类型暂且只支持json类型的
|
63
|
+
label: "编辑标题",
|
64
|
+
formLabelWidth: "6rem", //长度根据标题长度来,一个字一个rem
|
65
|
+
html:[],//具体详见模板二 input
|
66
|
+
};
|
67
|
+
type === cascader
|
68
|
+
value:[],
|
69
|
+
{
|
70
|
+
type: "cascader",
|
71
|
+
name: "classtreeName",
|
72
|
+
label: "产品分类",
|
73
|
+
showAllLevels:false,//可选参数,判断是否是取最后一集
|
74
|
+
placeholder: "请选择产品分类",
|
75
|
+
props: {
|
76
|
+
value: "value",
|
77
|
+
label: "label",
|
78
|
+
children: "children"
|
79
|
+
},
|
80
|
+
value: [],
|
81
|
+
}
|
82
|
+
|
83
|
+
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
|
88
|
+
例子:
|
89
|
+
|
90
|
+
temInput:[{
|
91
|
+
label: "标题",//自定义 title=>label
|
92
|
+
type: "text",//类型,暂且只支持text/select/date/daterange/button
|
93
|
+
name: "name",//参数名称
|
94
|
+
value: "",//值
|
95
|
+
placeholder: "请输入"//默认提示语,可选参数
|
96
|
+
},
|
97
|
+
{
|
98
|
+
label: "标题",//自定义
|
99
|
+
type: "select",//select类型包含options对象,参数label和value
|
100
|
+
name: "name",//参数名称
|
101
|
+
value: "",//值
|
102
|
+
placeholder: "请输入"//默认提示语,可选参数
|
103
|
+
props:{ //可选参数,正对select所需要的label和value
|
104
|
+
label:'name',
|
105
|
+
value:'code'
|
106
|
+
},
|
107
|
+
options:[
|
108
|
+
{
|
109
|
+
label:'',
|
110
|
+
value:''
|
111
|
+
}
|
112
|
+
]
|
113
|
+
},
|
114
|
+
{
|
115
|
+
type: "autocomplete",
|
116
|
+
name: "classtreeName",
|
117
|
+
label: "搜索",
|
118
|
+
placeholder: "请输入产品编号",
|
119
|
+
restaurants: [
|
120
|
+
{ value: "三全鲜食(北新泾店)", address: "长宁区新渔路144号" },
|
121
|
+
],
|
122
|
+
value: ""
|
123
|
+
},
|
124
|
+
{
|
125
|
+
label: "标题",
|
126
|
+
name: 'userPcode', //参数名称
|
127
|
+
type: 'remoteSelect',
|
128
|
+
placeholder: "请输入关键字",
|
129
|
+
value: '',
|
130
|
+
url: '/web/um/userserviceinfo/queryUserinfoservicePage.json', // 远程搜索所需的url
|
131
|
+
searchParam: 'userinfoCompname', //远程搜索带的参数名称,值为当前输入的值
|
132
|
+
props: { //可选参数,正对select所需要的label和value
|
133
|
+
label: 'userinfoCompname',
|
134
|
+
value: 'userinfoCode'
|
135
|
+
}
|
136
|
+
},
|
137
|
+
{
|
138
|
+
btnArray:[ //按钮的对象数组-搜索
|
139
|
+
{
|
140
|
+
type:'primary',//按钮类型,和element-ui类型一致
|
141
|
+
id:'query',//id类型,query表示搜索,add-新增,del-删除 query-搜索 其他不确定类型抛出inputBtnClick("整个按钮对象","索引值")方法进行操作
|
142
|
+
label:"搜索",
|
143
|
+
url:''
|
144
|
+
},
|
145
|
+
{
|
146
|
+
type:"primary",
|
147
|
+
id:'add',
|
148
|
+
label:"新增",//当为新增的时候,需使用模板,url是写在模板里面的
|
149
|
+
template:{
|
150
|
+
type: "json", //json类型暂且只支持json类型的
|
151
|
+
title: "编辑标题",
|
152
|
+
formLabelWidth: "6rem", //长度根据标题长度来,一个字一个rem
|
153
|
+
html:[
|
154
|
+
{
|
155
|
+
label: "名称",
|
156
|
+
type: "text",//类型暂且只支持text/upload/textarea/select/date
|
157
|
+
value: "",
|
158
|
+
name: "brandName"
|
159
|
+
},
|
160
|
+
{
|
161
|
+
label: "logo",
|
162
|
+
showFileList: false, //false为单个图片.暂且只支持单个图片编辑
|
163
|
+
type: "upload",
|
164
|
+
value: "",
|
165
|
+
name: "brandLogo"
|
166
|
+
},
|
167
|
+
{
|
168
|
+
btnArray: [
|
169
|
+
//id类型,query表示搜索,add-新增,confirm-确定(一般属于编辑里面的),cancel-取消,del-删除 query-搜索 其他不确定类型抛出inputBtnClick("整个按钮对象","索引值")方法进行操作
|
170
|
+
{
|
171
|
+
label: "取消", value=>label
|
172
|
+
id: "cancel"
|
173
|
+
},
|
174
|
+
{
|
175
|
+
type: "primary",
|
176
|
+
label: "确定",
|
177
|
+
id: "add",
|
178
|
+
url: "/web/rs/brand/saveBrand.json"
|
179
|
+
}
|
180
|
+
]
|
181
|
+
},
|
182
|
+
],
|
183
|
+
rules: {}//规则,和element一致
|
184
|
+
}
|
185
|
+
}
|
186
|
+
]
|
187
|
+
}]
|
188
|
+
|
189
|
+
#####二、queryPara (查询所需的默认参数)
|
190
|
+
|
191
|
+
queryPara: {
|
192
|
+
classtreeParentcode: '-1'
|
193
|
+
},
|
194
|
+
|
195
|
+
#####三、显示temTree
|
196
|
+
>**temTree**是一个对象,包含treeHeader(头部),filter(是否开启查询),treeBtn(右侧按钮),props,indent(tree层级缩进的宽度,默认16)
|
197
|
+
例子:
|
198
|
+
|
199
|
+
temTree: {
|
200
|
+
treeHeader: [
|
201
|
+
{
|
202
|
+
name: '分类名称',
|
203
|
+
type: 'first',
|
204
|
+
width: '30%' // 头部展示的宽度(支持px 和%)
|
205
|
+
},
|
206
|
+
{
|
207
|
+
name: '排序',
|
208
|
+
value: 'tenantCode',
|
209
|
+
width: '20%'
|
210
|
+
},
|
211
|
+
{
|
212
|
+
name: '排序',
|
213
|
+
value: 'tenantCode',
|
214
|
+
width: '20%'
|
215
|
+
},
|
216
|
+
{
|
217
|
+
name: '操作',
|
218
|
+
type: 'button'
|
219
|
+
}
|
220
|
+
],
|
221
|
+
treeBtn: [
|
222
|
+
{
|
223
|
+
label: '添加子分类',
|
224
|
+
id: 'add',
|
225
|
+
level: 3 //在node的level >=3时不显示该按钮,不填默认都显示
|
226
|
+
},
|
227
|
+
{
|
228
|
+
label: '编辑',
|
229
|
+
id: 'edit'
|
230
|
+
},
|
231
|
+
{
|
232
|
+
label: '删除',
|
233
|
+
id: 'del', // 表示删除
|
234
|
+
type: "danger", //和element一致
|
235
|
+
promptTitle: "确定删除吗?", //提示内容,可选参数,不填则不给提示
|
236
|
+
url: '/web/rs/classtree/deleteClasstree.json',
|
237
|
+
params: { //删除带的参数
|
238
|
+
classtreeId: ""
|
239
|
+
},
|
240
|
+
}
|
241
|
+
],
|
242
|
+
props: {
|
243
|
+
label: 'classtreeName', //指定节点标签为节点对象的某个属性值
|
244
|
+
children: 'childList' //指定子树为节点对象的某个属性值
|
245
|
+
},
|
246
|
+
indent: 40 //相邻级节点间的水平缩进,单位为像素
|
247
|
+
},
|
248
|
+
|
249
|
+
|
250
|
+
#####节点加载数据的方式nodeLoad
|
251
|
+
|
252
|
+
nodeLoad: {
|
253
|
+
lazy: true, //是否懒加载,默认为false
|
254
|
+
id: 'classtreeCode', //每个树节点用来作为唯一标识的属性,整棵树应该是唯一的(必填)
|
255
|
+
url: 'web/rs/classtree/queryClasstreePage.json', //加载数据的url(必须)
|
256
|
+
params: [{ //懒加载的传入参数,name为传入的参数名称,value为在当前节点取的数据值
|
257
|
+
name: 'classtreeParentcode',
|
258
|
+
value: 'classtreeCode'
|
259
|
+
}]
|
260
|
+
}
|
261
|
+
|
262
|
+
#####参数
|
263
|
+
| 参数 | 说明 | 类型 | 状态 |
|
264
|
+
| :--: | :-------:| :--: | :---: |
|
265
|
+
| temInput | 查询框 | Array | 可选 |
|
266
|
+
| queryPara | 获取tree数据的默认参数,<br/>无论是否是懒加载,第一次加载数据会带上该参数 | Object | 必填 |
|
267
|
+
| treeTable | table 数据显示 | Array | 可选 |
|
268
|
+
| nodeLoad | 控制树节点的加载方式 | Object | 必填 |
|
269
|
+
|
270
|
+
#####API
|
271
|
+
| 事件名称 | 说明 | 回调参数 | 例子 |
|
272
|
+
| :--------: | :--------:| :--: | :--: |
|
273
|
+
|inputBtnClick| temInput 里面其他按钮操作 | (data, index)|-|
|
274
|
+
|treeBtnClick| item为当前点击的按钮信息<br>val为当前点击的节点数据信息<br>node为当前点击的节点信息<br> | (item, val, node)|-|
|
@@ -0,0 +1,352 @@
|
|
1
|
+
<template>
|
2
|
+
<el-dialog
|
3
|
+
:title="title"
|
4
|
+
width="55%"
|
5
|
+
:append-to-body="true"
|
6
|
+
:visible.sync="diaVisible"
|
7
|
+
@close="handelClose"
|
8
|
+
>
|
9
|
+
<!-- 点击上传弹出的第一个框 -->
|
10
|
+
<el-form class="dialog-form" v-if="!type || type=='0'">
|
11
|
+
<el-form-item label="上传本地图片" class="dialog-form-item">
|
12
|
+
<el-button type="primary" class="file-btn" @click="changeFile">添加图片</el-button>
|
13
|
+
<span class="el-upload__tip cor-red">只能上传{{imgType}}文件,且不超过{{num || 5}}M,最多上传{{picLimit}}张</span>
|
14
|
+
</el-form-item>
|
15
|
+
<el-form-item label="添加网络图片" class="dialog-form-item">
|
16
|
+
<el-col :span="14">
|
17
|
+
<el-input v-model="fileUrl"></el-input>
|
18
|
+
</el-col>
|
19
|
+
<el-col :span="5" :offset="1">
|
20
|
+
<el-button type="primary" @click="getNetFile">提取</el-button>
|
21
|
+
</el-col>
|
22
|
+
</el-form-item>
|
23
|
+
</el-form>
|
24
|
+
<el-form class="dialog-form" v-else>
|
25
|
+
<el-form-item label="上传本地文件" class="dialog-form-item">
|
26
|
+
<el-button type="primary" class="file-btn" @click="changeFile">添加文件</el-button>
|
27
|
+
<span class="el-upload__tip cor-red">只能上传常见的mp4,ogg,flv,mkv格式文件,且不超过5M,最多上传{{picLimit}}个</span>
|
28
|
+
</el-form-item>
|
29
|
+
<el-form-item label="添加网络文件" class="dialog-form-item">
|
30
|
+
<el-col :span="14">
|
31
|
+
<el-input v-model="fileUrl"></el-input>
|
32
|
+
</el-col>
|
33
|
+
<el-col :span="5" :offset="1">
|
34
|
+
<el-button type="primary" @click="getNetFile">提取</el-button>
|
35
|
+
</el-col>
|
36
|
+
</el-form-item>
|
37
|
+
</el-form>
|
38
|
+
<div class="file-list">
|
39
|
+
<el-upload
|
40
|
+
v-if="!type || type=='0'"
|
41
|
+
ref="picUpload"
|
42
|
+
class="pic-div"
|
43
|
+
:action="fileUploadUrl"
|
44
|
+
:data="otherData"
|
45
|
+
:before-upload="beforeAvatarUpload"
|
46
|
+
:on-success="handelSuccess"
|
47
|
+
:with-credentials="true"
|
48
|
+
:on-remove="handleRemove"
|
49
|
+
list-type="picture-card"
|
50
|
+
:file-list="nFileList"
|
51
|
+
:multiple="multiple"
|
52
|
+
></el-upload>
|
53
|
+
<el-upload
|
54
|
+
v-else
|
55
|
+
ref="picUpload"
|
56
|
+
:action="fileUploadUrl"
|
57
|
+
:data="otherData"
|
58
|
+
:with-credentials="true"
|
59
|
+
:on-success="handelSuccess"
|
60
|
+
:on-error="handelError"
|
61
|
+
:on-remove="handleRemove"
|
62
|
+
:before-upload="beforeUpload"
|
63
|
+
:file-list="nFileList"
|
64
|
+
:multiple="multiple"
|
65
|
+
></el-upload>
|
66
|
+
</div>
|
67
|
+
<div slot="footer" class="dialog-footer">
|
68
|
+
<el-button @click="diaVisible = false">取消</el-button>
|
69
|
+
<el-button type="primary" @click="setFileList">确定</el-button>
|
70
|
+
</div>
|
71
|
+
</el-dialog>
|
72
|
+
</template>
|
73
|
+
<script>
|
74
|
+
import API from "#/api/common";
|
75
|
+
import { Loading } from "element-ui";
|
76
|
+
import { validateURL } from "#/utils/validate";
|
77
|
+
export default {
|
78
|
+
// props: ["fileList", "type", "limit", "visible", fileUploadUrl:{}],
|
79
|
+
props: {
|
80
|
+
fileList: Array,
|
81
|
+
type: String,
|
82
|
+
limit: Number,
|
83
|
+
visible: Boolean,
|
84
|
+
imgType: String,
|
85
|
+
num: Number,
|
86
|
+
multiple: {
|
87
|
+
type: Boolean,
|
88
|
+
default: false
|
89
|
+
},
|
90
|
+
fileUploadUrl: {
|
91
|
+
type: String,
|
92
|
+
default: process.env.API_ROOT + "/web/rs/goodsFile/uploadGoodsFile.json"
|
93
|
+
}
|
94
|
+
},
|
95
|
+
data() {
|
96
|
+
return {
|
97
|
+
title: "选择图片",
|
98
|
+
diaVisible: false,
|
99
|
+
fileUrl: "",
|
100
|
+
imgType: "jpg/png/gif",
|
101
|
+
num: 5,
|
102
|
+
picLimit: this.limit || 1,
|
103
|
+
nFileList: this.fileList || [],
|
104
|
+
otherData: {
|
105
|
+
tenantCode: "00000001"
|
106
|
+
},
|
107
|
+
uploading: [] //正在上传的文件集合
|
108
|
+
};
|
109
|
+
},
|
110
|
+
|
111
|
+
// mounted() {
|
112
|
+
// console.log(this.fileUploadUrl, "111111111111111111111111111111111111111.");
|
113
|
+
// if (!this.fileUploadUrl) {
|
114
|
+
// this.fileUploadUrl =
|
115
|
+
// process.env.API_ROOT + "/web/rs/goodsFile/uploadGoodsFile.json";
|
116
|
+
// }
|
117
|
+
// },
|
118
|
+
activated() {
|
119
|
+
console.log("组件被激活了");
|
120
|
+
},
|
121
|
+
methods: {
|
122
|
+
uploadPic(index, rows) {
|
123
|
+
//规格上传图片
|
124
|
+
this.rowSer = rows;
|
125
|
+
this.defaultPicList = rows.rsGoodsFileDomainList;
|
126
|
+
this.diaVisible = true;
|
127
|
+
},
|
128
|
+
handelClose() {
|
129
|
+
this.nFileList = [];
|
130
|
+
this.fileUrl = "";
|
131
|
+
this.$refs.picUpload.abort();
|
132
|
+
this.uploading = [];
|
133
|
+
this.$emit("toggle", false);
|
134
|
+
},
|
135
|
+
handleRemove(file, fileList) {
|
136
|
+
//移除正在上传的文件 需要从this.uploading中移除
|
137
|
+
let index = this.uploading.indexOf(file.uid);
|
138
|
+
if (index > -1) {
|
139
|
+
this.uploading.splice(index, 1);
|
140
|
+
}
|
141
|
+
this.nFileList = fileList;
|
142
|
+
},
|
143
|
+
beforeAvatarUpload(file) {
|
144
|
+
console.log(file, "file", this.beforeAvatarUpload);
|
145
|
+
//上传之前的回调
|
146
|
+
const fileType = /\.(gif|jpg|jpeg|png|GIF|JPG|PNG)$/.test(
|
147
|
+
file.name.toLowerCase()
|
148
|
+
);
|
149
|
+
if (!fileType) {
|
150
|
+
this.$message.error("图片格式为常见的jpg、png、gif格式!");
|
151
|
+
}
|
152
|
+
const isLt2M = file.size / 1024 / 1024 < 5;
|
153
|
+
if (!isLt2M) {
|
154
|
+
this.$message.error("上传的图片大小不能超过 5MB!");
|
155
|
+
}
|
156
|
+
if (isLt2M && fileType) {
|
157
|
+
this.uploading.push(file.uid);
|
158
|
+
}
|
159
|
+
return isLt2M && fileType;
|
160
|
+
},
|
161
|
+
beforeUpload(file) {
|
162
|
+
//上传之前的回调
|
163
|
+
const fileType = /\.(mp4|ogg|flv|mkv|MP4|FLV|MKV|OGG)$/.test(
|
164
|
+
file.name.toLowerCase()
|
165
|
+
);
|
166
|
+
if (!fileType) {
|
167
|
+
this.$message.error("文件格式为常见的mp4,ogg,flv,mkv格式!");
|
168
|
+
}
|
169
|
+
const isLt2M = file.size / 1024 / 1024 < 5;
|
170
|
+
if (!isLt2M) {
|
171
|
+
this.$message.error("上传的文件大小不能超过5MB!");
|
172
|
+
}
|
173
|
+
if (isLt2M && fileType) {
|
174
|
+
this.uploading.push(file.uid);
|
175
|
+
}
|
176
|
+
return isLt2M && fileType;
|
177
|
+
},
|
178
|
+
handelSuccess(response, file, fileList) {
|
179
|
+
console.log(response);
|
180
|
+
console.log(file);
|
181
|
+
console.log(fileList);
|
182
|
+
if (
|
183
|
+
response &&
|
184
|
+
typeof response == "object" &&
|
185
|
+
"success" in response &&
|
186
|
+
!response.success
|
187
|
+
) {
|
188
|
+
let nJson = JSON.parse(response.data.dataObj);
|
189
|
+
let nUrl = window.location.href;
|
190
|
+
if (process.env.NODE_ENV === "development") {
|
191
|
+
window.location.href =
|
192
|
+
process.env.API_ROOT + nJson.loginurl + "?url=" + nUrl;
|
193
|
+
} else {
|
194
|
+
window.location.href = nJson.loginurl + "?url=" + nUrl;
|
195
|
+
}
|
196
|
+
return;
|
197
|
+
}
|
198
|
+
let njson = {
|
199
|
+
name: file.name,
|
200
|
+
url: response.fileUrl,
|
201
|
+
goodsFileUrl: response.fileUrl,
|
202
|
+
uid: file.uid,
|
203
|
+
goodsFileType: this.type,
|
204
|
+
goodsFileName: response.fileCode,
|
205
|
+
status: "success"
|
206
|
+
};
|
207
|
+
//文件上传 需要从this.uploading中移除
|
208
|
+
let index = this.uploading.indexOf(file.uid);
|
209
|
+
this.uploading.splice(index, 1);
|
210
|
+
|
211
|
+
fileList.splice(fileList.indexOf(file), 1, njson);
|
212
|
+
console.log(fileList);
|
213
|
+
this.nFileList = fileList;
|
214
|
+
},
|
215
|
+
handelError(error, file, fileList) {
|
216
|
+
console.log(
|
217
|
+
response,
|
218
|
+
this.fileUploadUrl,
|
219
|
+
"handelErrorhandelErrorhandelErrorhandelErrorhandelErrorhandelErrorhandelErrorhandelError"
|
220
|
+
);
|
221
|
+
console.log(file);
|
222
|
+
console.log(fileList);
|
223
|
+
},
|
224
|
+
changeFile() {
|
225
|
+
if (this.nFileList.length >= this.picLimit) {
|
226
|
+
this.$message.error(
|
227
|
+
`最多上传${this.picLimit}${this.type == "0" ? "张图片" : "个文件"}`
|
228
|
+
);
|
229
|
+
return;
|
230
|
+
}
|
231
|
+
this.$refs.picUpload.$refs["upload-inner"].$el.dispatchEvent(
|
232
|
+
new MouseEvent("click")
|
233
|
+
);
|
234
|
+
},
|
235
|
+
getNetFile() {
|
236
|
+
if (this.nFileList.length >= this.picLimit) {
|
237
|
+
this.$message.error(
|
238
|
+
`最多上传${this.picLimit}${this.type == "0" ? "张图片" : "个文件"}`
|
239
|
+
);
|
240
|
+
this.fileUrl = "";
|
241
|
+
return;
|
242
|
+
}
|
243
|
+
if (validateURL(this.fileUrl)) {
|
244
|
+
let fileInfo = {
|
245
|
+
url: this.fileUrl,
|
246
|
+
goodsFileUrl: this.fileUrl,
|
247
|
+
name: this.fileUrl,
|
248
|
+
goodsFileType: this.type
|
249
|
+
};
|
250
|
+
this.nFileList.push(fileInfo);
|
251
|
+
this.fileUrl = "";
|
252
|
+
} else {
|
253
|
+
this.$message.error("请输入正确的图片地址");
|
254
|
+
}
|
255
|
+
},
|
256
|
+
setPicList(response, file, fileList) {},
|
257
|
+
beyond() {
|
258
|
+
//图片个数超出的验证
|
259
|
+
this.$message.error("最多5张!");
|
260
|
+
},
|
261
|
+
setFileList() {
|
262
|
+
let nList = [];
|
263
|
+
if (this.nFileList.length > 0) {
|
264
|
+
nList = JSON.parse(JSON.stringify(this.nFileList));
|
265
|
+
}
|
266
|
+
console.log(this.$refs.picUpload);
|
267
|
+
if (this.uploading.length > 0) {
|
268
|
+
this.$confirm(
|
269
|
+
"请确认所有文件都上传完成,继续操作会移除正在上传的文件!",
|
270
|
+
"提示",
|
271
|
+
{
|
272
|
+
confirmButtonText: "确定",
|
273
|
+
cancelButtonText: "取消",
|
274
|
+
type: "warning"
|
275
|
+
}
|
276
|
+
)
|
277
|
+
.then(() => {
|
278
|
+
this.$refs.picUpload.abort();
|
279
|
+
this.$emit("setFileList", nList);
|
280
|
+
this.diaVisible = false;
|
281
|
+
})
|
282
|
+
.catch(() => {});
|
283
|
+
} else {
|
284
|
+
this.$emit("setFileList", nList);
|
285
|
+
this.diaVisible = false;
|
286
|
+
}
|
287
|
+
}
|
288
|
+
},
|
289
|
+
mounted() {
|
290
|
+
console.log(this.multiple, "multiple");
|
291
|
+
},
|
292
|
+
watch: {
|
293
|
+
visible() {
|
294
|
+
this.diaVisible = this.visible;
|
295
|
+
if (this.visible) {
|
296
|
+
let nList = [];
|
297
|
+
if (this.fileList.length > 0) {
|
298
|
+
nList = JSON.parse(JSON.stringify(this.fileList));
|
299
|
+
nList.forEach(item => {
|
300
|
+
item.url = item.goodsFileUrl || item.url;
|
301
|
+
});
|
302
|
+
}
|
303
|
+
this.$nextTick(() => {
|
304
|
+
this.$refs.picUpload.$refs["upload-inner"].$el.style.display = "none";
|
305
|
+
});
|
306
|
+
this.nFileList = nList;
|
307
|
+
}
|
308
|
+
if (this.type && this.type == "1") {
|
309
|
+
this.title = "选择文件";
|
310
|
+
} else {
|
311
|
+
this.title = "选择图片";
|
312
|
+
}
|
313
|
+
},
|
314
|
+
limit() {
|
315
|
+
this.picLimit = this.limit || 1;
|
316
|
+
},
|
317
|
+
fileList() {
|
318
|
+
let nList = [];
|
319
|
+
if (this.fileList.length > 0) {
|
320
|
+
nList = JSON.parse(JSON.stringify(this.fileList));
|
321
|
+
}
|
322
|
+
this.nFileList = nList;
|
323
|
+
console.log(this.nFileList);
|
324
|
+
}
|
325
|
+
}
|
326
|
+
};
|
327
|
+
</script>
|
328
|
+
|
329
|
+
<style rel="stylesheet/scss" lang="scss" scoped>
|
330
|
+
.dialog-form {
|
331
|
+
width: 100%;
|
332
|
+
box-sizing: border-box;
|
333
|
+
padding-left: 20px;
|
334
|
+
.dialog-form-item {
|
335
|
+
width: 100% !important;
|
336
|
+
margin-left: 0 !important;
|
337
|
+
}
|
338
|
+
}
|
339
|
+
.el-dialog {
|
340
|
+
border-radius: 6px;
|
341
|
+
}
|
342
|
+
.file-btn {
|
343
|
+
position: relative;
|
344
|
+
overflow: hidden;
|
345
|
+
}
|
346
|
+
.file-input {
|
347
|
+
display: none;
|
348
|
+
}
|
349
|
+
.cor-red {
|
350
|
+
color: #ff0000;
|
351
|
+
}
|
352
|
+
</style>
|