feat: 微信云托管

This commit is contained in:
eric
2022-12-14 13:42:59 +08:00
parent b194db193b
commit 5f3712b7ab
8 changed files with 91 additions and 13 deletions

View File

@@ -4,4 +4,4 @@ export const type = "people"; //office 个人公司
export const appId = type === "people" ? "wx515bd42ee0db5c5d" : "wx2b2ec2ba5ee694bc";
export const envConfig=type === "people" ? "citynew-0givkbre03955d8c" : "cloud1-5g5xrgza12a0dd6d";
// export const envConfig="prod-4go74loxa6ac34a8"

2
dist/app.js vendored

File diff suppressed because one or more lines are too long

View File

@@ -8,6 +8,8 @@
/*! ./isNativeReflectConstruct.js */
/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */
/*! ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js */
/*! ./node_modules/@babel/runtime/helpers/esm/createClass.js */
@@ -16,6 +18,8 @@
/*! ./node_modules/@babel/runtime/helpers/esm/inherits.js */
/*! ./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js */
/*! ./possibleConstructorReturn.js */
/*! ./setPrototypeOf.js */

2
dist/common.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

2
dist/runtime.js vendored
View File

@@ -1 +1 @@
!function(){"use strict";var e,r,t,n,_={},a={};function __webpack_require__(e){var r=a[e];if(void 0!==r)return r.exports;var t=a[e]={id:e,loaded:!1,exports:{}};return _[e].call(t.exports,t,t.exports,__webpack_require__),t.loaded=!0,t.exports}__webpack_require__.m=_,e=[],__webpack_require__.O=function(r,t,n,_){if(!t){var a=1/0;for(c=0;c<e.length;c++){t=e[c][0],n=e[c][1],_=e[c][2];for(var i=!0,o=0;o<t.length;o++)(!1&_||a>=_)&&Object.keys(__webpack_require__.O).every((function(e){return __webpack_require__.O[e](t[o])}))?t.splice(o--,1):(i=!1,_<a&&(a=_));if(i){e.splice(c--,1);var u=n();void 0!==u&&(r=u)}}return r}_=_||0;for(var c=e.length;c>0&&e[c-1][2]>_;c--)e[c]=e[c-1];e[c]=[t,n,_]},__webpack_require__.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return __webpack_require__.d(r,{a:r}),r},__webpack_require__.d=function(e,r){for(var t in r)__webpack_require__.o(r,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},__webpack_require__.f={},__webpack_require__.e=function(e){return Promise.all(Object.keys(__webpack_require__.f).reduce((function(r,t){return __webpack_require__.f[t](e,r),r}),[]))},__webpack_require__.u=function(e){},__webpack_require__.miniCssF=function(e){},__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),__webpack_require__.hmd=function(e){return(e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:function(){throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e},__webpack_require__.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},r={},t="myApp:",__webpack_require__.l=function(e,n,_,a){if(r[e])r[e].push(n);else{var i,o;if(void 0!==_)for(var u=document.getElementsByTagName("script"),c=0;c<u.length;c++){var p=u[c];if(p.getAttribute("src")==e||p.getAttribute("data-webpack")==t+_){i=p;break}}i||(o=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,__webpack_require__.nc&&i.setAttribute("nonce",__webpack_require__.nc),i.setAttribute("data-webpack",t+_),i.src=e),r[e]=[n];var onScriptComplete=function(t,n){i.onerror=i.onload=null,clearTimeout(l);var _=r[e];if(delete r[e],i.parentNode&&i.parentNode.removeChild(i),_&&_.forEach((function(e){return e(n)})),t)return t(n)},l=setTimeout(onScriptComplete.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=onScriptComplete.bind(null,i.onerror),i.onload=onScriptComplete.bind(null,i.onload),o&&document.head.appendChild(i)}},__webpack_require__.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n={"webpack/container/remote/@tarojs/plugin-platform-weapp/dist/runtime":["default","./@tarojs/plugin-platform-weapp/dist/runtime",null],"webpack/container/remote/@tarojs/plugin-framework-react/dist/runtime":["default","./@tarojs/plugin-framework-react/dist/runtime",null],"webpack/container/remote/react-dom":["default","./react-dom",null],"webpack/container/remote/lodash":["default","./lodash",null],"webpack/container/remote/@tarojs/runtime":["default","./@tarojs/runtime",null],"webpack/container/remote/@tarojs/taro":["default","./@tarojs/taro",null],"webpack/container/remote/react":["default","./react",null],"webpack/container/remote/react/jsx-runtime":["default","./react/jsx-runtime",null],"webpack/container/remote/moment":["default","./moment",null]},__webpack_require__.taro=function(e){for(var r in n){var t=e(n[r][1]);_[r]=function(e){return function(r){r.exports=e()}}(t)}},__webpack_require__.p="/",function(){var e={runtime:0};__webpack_require__.f.j=function(r,t){var n=__webpack_require__.o(e,r)?e[r]:void 0;if(0!==n)if(n)t.push(n[2]);else if("runtime"!=r){var _=new Promise((function(t,_){n=e[r]=[t,_]}));t.push(n[2]=_);var a=__webpack_require__.p+__webpack_require__.u(r),i=new Error;__webpack_require__.l(a,(function(t){if(__webpack_require__.o(e,r)&&(0!==(n=e[r])&&(e[r]=void 0),n)){var _=t&&("load"===t.type?"missing":t.type),a=t&&t.target&&t.target.src;i.message="Loading chunk "+r+" failed.\n("+_+": "+a+")",i.name="ChunkLoadError",i.type=_,i.request=a,n[1](i)}}),"chunk-"+r,r)}else e[r]=0},__webpack_require__.O.j=function(r){return 0===e[r]};var webpackJsonpCallback=function(r,t){var n,_,a=t[0],i=t[1],o=t[2],u=0;if(a.some((function(r){return 0!==e[r]}))){for(n in i)__webpack_require__.o(i,n)&&(__webpack_require__.m[n]=i[n]);if(o)var c=o(__webpack_require__)}for(r&&r(t);u<a.length;u++)_=a[u],__webpack_require__.o(e,_)&&e[_]&&e[_][0](),e[_]=0;return __webpack_require__.O(c)},r=wx.webpackJsonp=wx.webpackJsonp||[];r.forEach(webpackJsonpCallback.bind(null,0)),r.push=webpackJsonpCallback.bind(null,r.push.bind(r))}()}();
!function(){"use strict";var e,r,t,n,_={},a={};function __webpack_require__(e){var r=a[e];if(void 0!==r)return r.exports;var t=a[e]={id:e,loaded:!1,exports:{}};return _[e].call(t.exports,t,t.exports,__webpack_require__),t.loaded=!0,t.exports}__webpack_require__.m=_,e=[],__webpack_require__.O=function(r,t,n,_){if(!t){var a=1/0;for(c=0;c<e.length;c++){t=e[c][0],n=e[c][1],_=e[c][2];for(var i=!0,o=0;o<t.length;o++)(!1&_||a>=_)&&Object.keys(__webpack_require__.O).every((function(e){return __webpack_require__.O[e](t[o])}))?t.splice(o--,1):(i=!1,_<a&&(a=_));if(i){e.splice(c--,1);var u=n();void 0!==u&&(r=u)}}return r}_=_||0;for(var c=e.length;c>0&&e[c-1][2]>_;c--)e[c]=e[c-1];e[c]=[t,n,_]},__webpack_require__.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return __webpack_require__.d(r,{a:r}),r},__webpack_require__.d=function(e,r){for(var t in r)__webpack_require__.o(r,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},__webpack_require__.f={},__webpack_require__.e=function(e){return Promise.all(Object.keys(__webpack_require__.f).reduce((function(r,t){return __webpack_require__.f[t](e,r),r}),[]))},__webpack_require__.u=function(e){},__webpack_require__.miniCssF=function(e){},__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),__webpack_require__.hmd=function(e){return(e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:function(){throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e},__webpack_require__.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},r={},t="myApp:",__webpack_require__.l=function(e,n,_,a){if(r[e])r[e].push(n);else{var i,o;if(void 0!==_)for(var u=document.getElementsByTagName("script"),c=0;c<u.length;c++){var p=u[c];if(p.getAttribute("src")==e||p.getAttribute("data-webpack")==t+_){i=p;break}}i||(o=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,__webpack_require__.nc&&i.setAttribute("nonce",__webpack_require__.nc),i.setAttribute("data-webpack",t+_),i.src=e),r[e]=[n];var onScriptComplete=function(t,n){i.onerror=i.onload=null,clearTimeout(l);var _=r[e];if(delete r[e],i.parentNode&&i.parentNode.removeChild(i),_&&_.forEach((function(e){return e(n)})),t)return t(n)},l=setTimeout(onScriptComplete.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=onScriptComplete.bind(null,i.onerror),i.onload=onScriptComplete.bind(null,i.onload),o&&document.head.appendChild(i)}},__webpack_require__.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n={"webpack/container/remote/@tarojs/plugin-platform-weapp/dist/runtime":["default","./@tarojs/plugin-platform-weapp/dist/runtime",null],"webpack/container/remote/@tarojs/plugin-framework-react/dist/runtime":["default","./@tarojs/plugin-framework-react/dist/runtime",null],"webpack/container/remote/react-dom":["default","./react-dom",null],"webpack/container/remote/lodash":["default","./lodash",null],"webpack/container/remote/@tarojs/runtime":["default","./@tarojs/runtime",null],"webpack/container/remote/react":["default","./react",null],"webpack/container/remote/@tarojs/taro":["default","./@tarojs/taro",null],"webpack/container/remote/react/jsx-runtime":["default","./react/jsx-runtime",null],"webpack/container/remote/moment":["default","./moment",null]},__webpack_require__.taro=function(e){for(var r in n){var t=e(n[r][1]);_[r]=function(e){return function(r){r.exports=e()}}(t)}},__webpack_require__.p="/",function(){var e={runtime:0};__webpack_require__.f.j=function(r,t){var n=__webpack_require__.o(e,r)?e[r]:void 0;if(0!==n)if(n)t.push(n[2]);else if("runtime"!=r){var _=new Promise((function(t,_){n=e[r]=[t,_]}));t.push(n[2]=_);var a=__webpack_require__.p+__webpack_require__.u(r),i=new Error;__webpack_require__.l(a,(function(t){if(__webpack_require__.o(e,r)&&(0!==(n=e[r])&&(e[r]=void 0),n)){var _=t&&("load"===t.type?"missing":t.type),a=t&&t.target&&t.target.src;i.message="Loading chunk "+r+" failed.\n("+_+": "+a+")",i.name="ChunkLoadError",i.type=_,i.request=a,n[1](i)}}),"chunk-"+r,r)}else e[r]=0},__webpack_require__.O.j=function(r){return 0===e[r]};var webpackJsonpCallback=function(r,t){var n,_,a=t[0],i=t[1],o=t[2],u=0;if(a.some((function(r){return 0!==e[r]}))){for(n in i)__webpack_require__.o(i,n)&&(__webpack_require__.m[n]=i[n]);if(o)var c=o(__webpack_require__)}for(r&&r(t);u<a.length;u++)_=a[u],__webpack_require__.o(e,_)&&e[_]&&e[_][0](),e[_]=0;return __webpack_require__.O(c)},r=wx.webpackJsonp=wx.webpackJsonp||[];r.forEach(webpackJsonpCallback.bind(null,0)),r.push=webpackJsonpCallback.bind(null,r.push.bind(r))}()}();

View File

@@ -1,25 +1,87 @@
import Taro from "@tarojs/taro";
import { Component } from "react";
import "./app.scss";
import {envConfig} from '../config'
import { envConfig, appId } from "../config";
class App extends Component<any> {
componentDidMount() {
async componentDidMount() {
Taro.cloud.init({
// env: 'cloud1-5g5xrgza12a0dd6d',//公司
env:envConfig, //个人
traceUser:true
})
env: envConfig, //个人
traceUser: true,
});
const a = new Taro.cloud.Cloud({
resourceEnv:envConfig, //公司
})
a.init()
resourceEnv: envConfig,
resourceAppid: appId, // 环境所属的账号appid
// resourceEnv: "prod-4go74loxa6ac34a8", // 微信云托管的环境ID
});
await a.init();
// setTimeout(()=>{
// const b= new Taro.cloud.Cloud({
// resourceEnv: "prod-4go74loxa6ac34a8", // 微信云托管的环境ID
// resourceAppid: appId, // 环境所属的账号appid
// });
// b.init();
// const r = b.callContainer({
// path: '/', // 填入业务自定义路径
// header: {
// 'X-WX-SERVICE': 'fastapi-003', // 填入服务名称
// },
// // 其余参数同 wx.request
// method: 'GET',
// })
// console.log(r,'rrrr')
// },3000)
}
componentDidShow() {}
componentDidHide() {}
async call(obj, number = 0) {
const that: any = this;
if (that.cloud == null) {
that.cloud = new Taro.cloud.Cloud({
resourceAppid: "wx515bd42ee0db5c5d", // 微信云托管环境所属账号服务商appid、公众号或小程序appid
resourceEnv: "prod-4go74loxa6ac34a8", // 微信云托管的环境ID
});
await that.cloud.init(); // init过程是异步的需要等待 init 完成才可以发起调用
}
try {
const result = await that.cloud.callContainer({
path: obj.path, // 填入业务自定义路径和参数,根目录,就是 /
method: obj.method || "GET", // 按照自己的业务开发,选择对应的方法
// dataType:'text', // 如果返回的不是 json 格式,需要添加此项
header: {
"X-WX-SERVICE": "fastapi-003", // xxx中填入服务名称微信云托管 - 服务管理 - 服务列表 - 服务名称)
// 其他 header 参数
},
// 其余参数同 wx.request
});
console.log(
`微信云托管调用结果${result.errMsg} | callid:${result.callID}`
);
return result.data; // 业务数据在 data 中
} catch (e) {
const error = e.toString();
// 如果错误信息为未初始化则等待300ms再次尝试因为 init 过程是异步的
if (error.indexOf("Cloud API isn't enabled") != -1 && number < 3) {
return new Promise((resolve) => {
setTimeout(function () {
resolve(that.call(obj, number + 1));
}, 300);
});
} else {
throw new Error(`微信云托管调用失败${error}`);
}
}
}
// this.props.children 是将要会渲染的页面
render() {
return this.props.children;

View File

@@ -93,6 +93,18 @@ const Home = () => {
};
});
const testCloud = async () => {
// const app = Taro.getApp()
// console.log('app',app)
// const res = await app.call({
// path:'/'
// })
// console.log('业务返回结果',res)
};
useEffect(() => {
testCloud();
}, []);
useEffect(() => {
// 设置标题
definePageConfig({