{"version":3,"sources":["webpack:///./src/views/BasicModule/login.vue?56ce","webpack:///src/views/BasicModule/login.vue","webpack:///./src/views/BasicModule/login.vue?e64e","webpack:///./src/views/BasicModule/login.vue","webpack:///./src/views/BasicModule/login.vue?c1a0","webpack:///./src/assets/imgs/icon/www.aipesticides.com.svg"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","logo","on","login","required","model","value","form","callback","$$v","$set","expression","_v","staticStyle","localSvg","staticRenderFns","name","components","data","username","password","captchaImageurl","mounted","created","methods","message","forbidClick","overlay","duration","localStorage","dispatch","then","confirmLoading","path","_cookies","_data","catch","reject","onSubmit","values","console","registerBtn","component","module","exports"],"mappings":"kJAAA,IAAIA,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACE,YAAY,WAAW,CAACF,EAAG,MAAM,CAACE,YAAY,WAAW,CAACF,EAAG,MAAM,CAACG,MAAM,CAAC,IAAMP,EAAIQ,KAAK,IAAM,GAAG,OAAS,QAAQJ,EAAG,MAAM,CAACE,YAAY,WAAW,CAACF,EAAG,WAAW,CAACE,YAAY,OAAOG,GAAG,CAAC,OAAST,EAAIU,QAAQ,CAACN,EAAG,YAAY,CAACG,MAAM,CAAC,YAAY,0BAA0B,KAAO,MAAM,YAAc,SAAS,MAAQ,CAAC,CAAEI,UAAU,KAASC,MAAM,CAACC,MAAOb,EAAIc,KAAa,SAAEC,SAAS,SAAUC,GAAMhB,EAAIiB,KAAKjB,EAAIc,KAAM,WAAYE,IAAME,WAAW,mBAAmBd,EAAG,YAAY,CAACG,MAAM,CAAC,YAAY,sBAAsB,KAAO,WAAW,KAAO,KAAK,YAAc,QAAQ,MAAQ,CAAC,CAAEI,UAAU,KAASC,MAAM,CAACC,MAAOb,EAAIc,KAAa,SAAEC,SAAS,SAAUC,GAAMhB,EAAIiB,KAAKjB,EAAIc,KAAM,WAAYE,IAAME,WAAW,mBAAmBd,EAAG,MAAM,CAACA,EAAG,aAAa,CAACE,YAAY,MAAMC,MAAM,CAAC,MAAQ,GAAG,MAAQ,GAAG,KAAO,OAAO,cAAc,WAAW,CAACP,EAAImB,GAAG,SAAS,IAAI,IAAI,GAAGf,EAAG,MAAM,CAACE,YAAY,UAAU,CAACF,EAAG,OAAO,CAACA,EAAG,IAAI,CAACgB,YAAY,CAAC,SAAW,WAAW,QAAU,eAAe,OAAS,QAAQb,MAAM,CAAC,KAAO,IAAI,OAAS,WAAW,CAACH,EAAG,MAAM,CAACgB,YAAY,CAAC,MAAQ,OAAO,OAAS,OAAO,SAAW,WAAW,IAAM,IAAI,KAAO,OAAOhB,EAAG,QAAQ,CAACG,MAAM,CAAC,IAAMP,EAAIqB,SAAS,MAAQ,MAAM,OAAS,KAAK,KAAO,gBAAgB,YAAc,kDAC5zCC,EAAkB,GCyFtB,G,kDAAA,kBACe,GACfC,aACAC,cACAC,KAHA,WAIA,OACAjB,eACAa,mBACAP,MACAY,YACAC,aAMAC,qBAGAC,QAlBA,aAsBAC,QAtBA,WAuBA,uCACAH,mCACA,0BACA,qCAEAI,SACArB,MADA,WACA,WACA,uBACAsB,iBACAC,eACAC,WACAC,aAGAC,oDACAA,8DACA,YACAC,SAAA,mBACAC,MAAA,YACAC,UAaA,mBAAAC,gBACA,sBACAC,KAEAC,mCACA,mBACAD,mBAUAE,OAAA,YACAJ,UAEAK,cAWAC,SAzDA,SAyDAC,GACAC,yBAcAC,YAxEA,WAyEA,mBAAAR,sBChM8V,I,wBCQ1VS,EAAY,eACd,EACAlD,EACAuB,GACA,EACA,KACA,WACA,MAIa,aAAA2B,E,2CCnBf,W,qBCAAC,EAAOC,QAAU,IAA0B","file":"js/chunk-040b7330.v0.1.2.1793675441333.js?hash=v0.1.2.1793675441333","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"content\"},[_c('div',{staticClass:\"logiBox\"},[_c('img',{attrs:{\"src\":_vm.logo,\"alt\":\"\",\"srcset\":\"\"}})]),_c('div',{staticClass:\"formBox\"},[_c('van-form',{staticClass:\"form\",on:{\"submit\":_vm.login}},[_c('van-field',{attrs:{\"left-icon\":\" iconfont icon-zhanghao\",\"name\":\"用户名\",\"placeholder\":\"请输入用户名\",\"rules\":[{ required: true }]},model:{value:(_vm.form.username),callback:function ($$v) {_vm.$set(_vm.form, \"username\", $$v)},expression:\"form.username\"}}),_c('van-field',{attrs:{\"left-icon\":\" iconfont icon-mima\",\"type\":\"password\",\"name\":\"密码\",\"placeholder\":\"请输入密码\",\"rules\":[{ required: true }]},model:{value:(_vm.form.password),callback:function ($$v) {_vm.$set(_vm.form, \"password\", $$v)},expression:\"form.password\"}}),_c('div',[_c('van-button',{staticClass:\"btn\",attrs:{\"round\":\"\",\"block\":\"\",\"type\":\"info\",\"native-type\":\"submit\"}},[_vm._v(\"提交\")])],1)],1)],1),_c('div',{staticClass:\"el-xcc\"},[_c('span',[_c('a',{staticStyle:{\"position\":\"relative\",\"display\":\"inline-block\",\"height\":\"38px\"},attrs:{\"href\":\" \",\"target\":\"_blank\"}},[_c('div',{staticStyle:{\"width\":\"100%\",\"height\":\"100%\",\"position\":\"absolute\",\"top\":\"0\",\"left\":\"0\"}}),_c('embed',{attrs:{\"src\":_vm.localSvg,\"width\":\"103\",\"height\":\"38\",\"type\":\"image/svg+xml\",\"pluginspage\":\"//www.adobe.com/svg/viewer/install/\"}})])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!-- 登录 -->\r\n<template>\r\n  <div class=\"content\">\r\n    <div class=\"logiBox\">\r\n      <img :src=\"logo\" alt=\"\" srcset=\"\" />\r\n    </div>\r\n    <div class=\"formBox\">\r\n      <van-form @submit=\"login\" class=\"form\">\r\n        <van-field\r\n          v-model=\"form.username\"\r\n          left-icon=\" iconfont icon-zhanghao\"\r\n          name=\"用户名\"\r\n          placeholder=\"请输入用户名\"\r\n          :rules=\"[{ required: true }]\"\r\n        />\r\n        <van-field\r\n          v-model=\"form.password\"\r\n          left-icon=\" iconfont icon-mima\"\r\n          type=\"password\"\r\n          name=\"密码\"\r\n          placeholder=\"请输入密码\"\r\n          :rules=\"[{ required: true }]\"\r\n        />\r\n\r\n        <!-- <van-checkbox\r\n          v-model=\"form.remember\"\r\n          checked-color=\"#26bfb2\"\r\n          class=\"rememberClass\"\r\n        >\r\n          记住密码\r\n        </van-checkbox> -->\r\n        <!-- \r\n      <van-row>\r\n        <van-col span=\"16\">\r\n          <van-field\r\n            v-model=\"form.code\"\r\n            label=\"验证码\"\r\n            placeholder=\"请输入验证码\"\r\n          />\r\n        </van-col>\r\n        <van-col span=\"8\">\r\n          <van-image\r\n            class=\"captchaImage\"\r\n            @click=\"captchaImage\"\r\n            :src=\"'data:image/gif;base64,' + captchaImageurl\"\r\n          />\r\n         \r\n        </van-col>\r\n      </van-row> -->\r\n\r\n        <!-- <van-row type=\"flex\" justify=\"end\">\r\n          <van-col><div @click=\"registerBtn\">注册</div></van-col>\r\n        </van-row> -->\r\n        <div>\r\n          <van-button round block type=\"info\" native-type=\"submit\" class=\"btn\"\r\n            >提交</van-button\r\n          >\r\n        </div>\r\n      </van-form>\r\n    </div>\r\n    <div class=\"el-xcc\">\r\n      <span\r\n        ><a\r\n          href=\" \"\r\n          target=\"_blank\"\r\n          style=\"position: relative; display: inline-block; height: 38px\"\r\n          ><div\r\n            style=\"\r\n              width: 100%;\r\n              height: 100%;\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n            \"\r\n          ></div>\r\n          <embed\r\n            :src=\"localSvg\"\r\n            width=\"103\"\r\n            height=\"38\"\r\n            type=\"image/svg+xml\"\r\n            pluginspage=\"//www.adobe.com/svg/viewer/install/\" /></a\r\n      ></span>\r\n    </div>\r\n  </div>\r\n</template>\r\n\r\n<script>\r\n// import { login, captchaImage } from \"@/api/login\";\r\n// import { setToken, removeToken } from \"@/utils/auth\";\r\n// import Cookies from \"js-cookie\";\r\nconst Base64 = require(\"js-base64\").Base64;\r\nexport default {\r\n  name: \"login\",\r\n  components: {},\r\n  data() {\r\n    return {\r\n      logo: require(\"@/assets/imgs/logo.png\"),\r\n      localSvg: require(\"@/assets/imgs/icon/www.aipesticides.com.svg\"),\r\n      form: {\r\n        username: \"\",\r\n        password: \"\",\r\n        // remember: false,\r\n        // code: \"\",\r\n        // uuid: \"\",\r\n      },\r\n\r\n      captchaImageurl: \"\",\r\n    };\r\n  },\r\n  mounted() {\r\n    // this.captchaImage();\r\n    // this.getCookie();\r\n  },\r\n  created() {\r\n    let username = localStorage.getItem(\"username\"),\r\n      password = localStorage.getItem(\"password\");\r\n    if (username) this.form.username = username;\r\n    if (password) this.form.password = Base64.decode(password);\r\n  },\r\n  methods: {\r\n    login() {\r\n      let confirmLoading = this.$toast.loading({\r\n        message: \"加载中...\",\r\n        forbidClick: true,\r\n        overlay: true,\r\n        duration: 0,\r\n      });\r\n\r\n      localStorage.setItem(\"username\", this.form.username);\r\n      localStorage.setItem(\"password\", Base64.encode(this.form.password));\r\n      this.$store\r\n        .dispatch(\"Login\", this.form)\r\n        .then((res) => {\r\n          confirmLoading.clear();\r\n          // 判断是否记住密码\r\n          // if (this.form.remember) {\r\n          //   Cookies.set(\"username\", this.form.username, { expires: 30 });\r\n          //   Cookies.set(\"password\", Base64.encode(this.form.password), {\r\n          //     expires: 30,\r\n          //   });\r\n          //   Cookies.set(\"remember\", this.form.remember, { expires: 30 });\r\n          // } else {\r\n          //   Cookies.remove(\"username\");\r\n          //   Cookies.remove(\"password\");\r\n          //   Cookies.remove(\"remember\");\r\n          // }\r\n          this.$router.replace({ path: \"/index\" });\r\n          let _data = document.cookie,\r\n            _cookies = {};\r\n\r\n          _data.split(\"; \").forEach((item) => {\r\n            let _d = item.split(\"=\");\r\n            _cookies[_d[0]] = _d[1];\r\n          });\r\n          // console.log(_cookies);\r\n          // if (isSystem() == \"ios\") {\r\n          // window.interaction.bridge({\r\n          //   msgType: \"setCookie\",\r\n          //   data: _cookies,\r\n          // });\r\n          // }\r\n        })\r\n        .catch((error) => {\r\n          confirmLoading.clear();\r\n          // 请求失败也要移除 loading 状态\r\n          reject(error);\r\n        });\r\n    },\r\n\r\n    // captchaImage() {\r\n    //   captchaImage().then((res) => {\r\n    //     console.log(res);\r\n    //     this.captchaImageurl = res.img;\r\n    //     this.form.uuid = res.uuid;\r\n    //   });\r\n    // },\r\n    onSubmit(values) {\r\n      console.log(\"submit\", values);\r\n    },\r\n    // getCookie() {\r\n    //   const Base64 = require(\"js-base64\").Base64;\r\n    //   const username = Cookies.get(\"username\");\r\n    //   const password = Cookies.get(\"password\");\r\n    //   const remember = Cookies.get(\"remember\");\r\n    //   this.form = {\r\n    //     username: username === undefined ? this.form.username : username,\r\n    //     password:\r\n    //       password === undefined ? this.form.password : Base64.decode(password),\r\n    //     remember: remember === undefined ? false : Boolean(remember),\r\n    //   };\r\n    // },\r\n    registerBtn() {\r\n      this.$router.push({ path: \"/register\" });\r\n    },\r\n  },\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.captchaImage {\r\n  width: 80%;\r\n}\r\n\r\n.logiBox {\r\n  width: 40%;\r\n  margin: 0 auto;\r\n  padding: 20vh 0 10vh;\r\n\r\n  img {\r\n    display: block;\r\n    width: 100%;\r\n  }\r\n}\r\n\r\n.formBox {\r\n  padding: 0 40px;\r\n\r\n  .form {\r\n    > div.van-cell {\r\n      border: 1px solid #26bfb2;\r\n      border-radius: 44px;\r\n      margin-bottom: 22px;\r\n      height: 44px;\r\n    }\r\n\r\n    > div.van-cell:last-child {\r\n      margin-bottom: 0;\r\n    }\r\n\r\n    > div::after {\r\n      content: \"\";\r\n      display: none;\r\n    }\r\n  }\r\n}\r\n\r\n.btn {\r\n  background: #26bfb2;\r\n  border: none;\r\n  margin-top: 100px;\r\n}\r\n\r\n.rememberClass {\r\n  font-size: 14px;\r\n}\r\n.el-xcc {\r\n  position: absolute;\r\n  bottom: 20px;\r\n  left: 50%;\r\n  transform: translateX(-50%); // 向左移动自身宽度的一半，实现水平居中\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./login.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./login.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./login.vue?vue&type=template&id=64577b4a&scoped=true&\"\nimport script from \"./login.vue?vue&type=script&lang=js&\"\nexport * from \"./login.vue?vue&type=script&lang=js&\"\nimport style0 from \"./login.vue?vue&type=style&index=0&id=64577b4a&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"64577b4a\",\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./login.vue?vue&type=style&index=0&id=64577b4a&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/www.aipesticides.com.29c1da8a.svg\";"],"sourceRoot":""}