'颜色尺码价格联动'
This commit is contained in:
@@ -205,4 +205,11 @@ page {
|
||||
.safe-bottom {
|
||||
padding-bottom: env(safe-area-inset-bottom);
|
||||
}
|
||||
/* 全局隐藏横向滚动条(scroll-view / webkit) */
|
||||
::-webkit-scrollbar {
|
||||
display: none;
|
||||
width: 0;
|
||||
height: 0;
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
|
||||
+76
@@ -55,6 +55,11 @@
|
||||
/******/ // The module cache
|
||||
/******/ var installedModules = {};
|
||||
/******/
|
||||
/******/ // object to store loaded CSS chunks
|
||||
/******/ var installedCssChunks = {
|
||||
/******/ "common/runtime": 0
|
||||
/******/ }
|
||||
/******/
|
||||
/******/ // object to store loaded and loading chunks
|
||||
/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
|
||||
/******/ // Promise = chunk loading, 0 = chunk loaded
|
||||
@@ -64,6 +69,11 @@
|
||||
/******/
|
||||
/******/ var deferredModules = [];
|
||||
/******/
|
||||
/******/ // script path function
|
||||
/******/ function jsonpScriptSrc(chunkId) {
|
||||
/******/ return __webpack_require__.p + "" + chunkId + ".js"
|
||||
/******/ }
|
||||
/******/
|
||||
/******/ // The require function
|
||||
/******/ function __webpack_require__(moduleId) {
|
||||
/******/
|
||||
@@ -88,6 +98,69 @@
|
||||
/******/ return module.exports;
|
||||
/******/ }
|
||||
/******/
|
||||
/******/ // This file contains only the entry chunk.
|
||||
/******/ // The chunk loading function for additional chunks
|
||||
/******/ __webpack_require__.e = function requireEnsure(chunkId) {
|
||||
/******/ var promises = [];
|
||||
/******/
|
||||
/******/
|
||||
/******/
|
||||
/******/
|
||||
/******/ // JSONP chunk loading for javascript
|
||||
/******/
|
||||
/******/ var installedChunkData = installedChunks[chunkId];
|
||||
/******/ if(installedChunkData !== 0) { // 0 means "already installed".
|
||||
/******/
|
||||
/******/ // a Promise means "currently loading".
|
||||
/******/ if(installedChunkData) {
|
||||
/******/ promises.push(installedChunkData[2]);
|
||||
/******/ } else {
|
||||
/******/ // setup Promise in chunk cache
|
||||
/******/ var promise = new Promise(function(resolve, reject) {
|
||||
/******/ installedChunkData = installedChunks[chunkId] = [resolve, reject];
|
||||
/******/ });
|
||||
/******/ promises.push(installedChunkData[2] = promise);
|
||||
/******/
|
||||
/******/ // start chunk loading
|
||||
/******/ var script = document.createElement('script');
|
||||
/******/ var onScriptComplete;
|
||||
/******/
|
||||
/******/ script.charset = 'utf-8';
|
||||
/******/ script.timeout = 120;
|
||||
/******/ if (__webpack_require__.nc) {
|
||||
/******/ script.setAttribute("nonce", __webpack_require__.nc);
|
||||
/******/ }
|
||||
/******/ script.src = jsonpScriptSrc(chunkId);
|
||||
/******/
|
||||
/******/ // create error before stack unwound to get useful stacktrace later
|
||||
/******/ var error = new Error();
|
||||
/******/ onScriptComplete = function (event) {
|
||||
/******/ // avoid mem leaks in IE.
|
||||
/******/ script.onerror = script.onload = null;
|
||||
/******/ clearTimeout(timeout);
|
||||
/******/ var chunk = installedChunks[chunkId];
|
||||
/******/ if(chunk !== 0) {
|
||||
/******/ if(chunk) {
|
||||
/******/ var errorType = event && (event.type === 'load' ? 'missing' : event.type);
|
||||
/******/ var realSrc = event && event.target && event.target.src;
|
||||
/******/ error.message = 'Loading chunk ' + chunkId + ' failed.\n(' + errorType + ': ' + realSrc + ')';
|
||||
/******/ error.name = 'ChunkLoadError';
|
||||
/******/ error.type = errorType;
|
||||
/******/ error.request = realSrc;
|
||||
/******/ chunk[1](error);
|
||||
/******/ }
|
||||
/******/ installedChunks[chunkId] = undefined;
|
||||
/******/ }
|
||||
/******/ };
|
||||
/******/ var timeout = setTimeout(function(){
|
||||
/******/ onScriptComplete({ type: 'timeout', target: script });
|
||||
/******/ }, 120000);
|
||||
/******/ script.onerror = script.onload = onScriptComplete;
|
||||
/******/ document.head.appendChild(script);
|
||||
/******/ }
|
||||
/******/ }
|
||||
/******/ return Promise.all(promises);
|
||||
/******/ };
|
||||
/******/
|
||||
/******/ // expose the modules object (__webpack_modules__)
|
||||
/******/ __webpack_require__.m = modules;
|
||||
@@ -141,6 +214,9 @@
|
||||
/******/ // __webpack_public_path__
|
||||
/******/ __webpack_require__.p = "/";
|
||||
/******/
|
||||
/******/ // on error function for async loading
|
||||
/******/ __webpack_require__.oe = function(err) { console.error(err); throw err; };
|
||||
/******/
|
||||
/******/ var jsonpArray = global["webpackJsonp"] = global["webpackJsonp"] || [];
|
||||
/******/ var oldJsonpFunction = jsonpArray.push.bind(jsonpArray);
|
||||
/******/ jsonpArray.push = webpackJsonpCallback;
|
||||
|
||||
+798
-2
@@ -871,7 +871,7 @@ function populateParameters(result) {
|
||||
// wx.getAccountInfoSync
|
||||
|
||||
var parameters = {
|
||||
appId: "",
|
||||
appId: "__UNI__73E5929",
|
||||
appName: "inkreach-miniprogram",
|
||||
appVersion: "1.0.0",
|
||||
appVersionCode: "100",
|
||||
@@ -982,7 +982,7 @@ var getAppBaseInfo = {
|
||||
var _hostName = getHostName(result);
|
||||
var hostLanguage = (language || '').replace('_', '-');
|
||||
var parameters = {
|
||||
appId: "",
|
||||
appId: "__UNI__73E5929",
|
||||
appName: "inkreach-miniprogram",
|
||||
appVersion: "1.0.0",
|
||||
appVersionCode: "100",
|
||||
@@ -12751,6 +12751,802 @@ var debounce = function debounce(scope, fn, delay) {
|
||||
var _default = debounce;
|
||||
exports.default = _default;
|
||||
|
||||
/***/ }),
|
||||
/* 49 */,
|
||||
/* 50 */,
|
||||
/* 51 */,
|
||||
/* 52 */,
|
||||
/* 53 */,
|
||||
/* 54 */,
|
||||
/* 55 */
|
||||
/*!************************************************************************************************!*\
|
||||
!*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/@babel/runtime/regenerator/index.js ***!
|
||||
\************************************************************************************************/
|
||||
/*! no static exports found */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
// TODO(Babel 8): Remove this file.
|
||||
|
||||
var runtime = __webpack_require__(/*! @babel/runtime/helpers/regeneratorRuntime */ 56)();
|
||||
module.exports = runtime;
|
||||
|
||||
/***/ }),
|
||||
/* 56 */
|
||||
/*!*******************************************************************!*\
|
||||
!*** ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js ***!
|
||||
\*******************************************************************/
|
||||
/*! no static exports found */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var _typeof = __webpack_require__(/*! ./typeof.js */ 13)["default"];
|
||||
function _regeneratorRuntime() {
|
||||
"use strict";
|
||||
|
||||
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
|
||||
module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
|
||||
return e;
|
||||
}, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
||||
var t,
|
||||
e = {},
|
||||
r = Object.prototype,
|
||||
n = r.hasOwnProperty,
|
||||
o = Object.defineProperty || function (t, e, r) {
|
||||
t[e] = r.value;
|
||||
},
|
||||
i = "function" == typeof Symbol ? Symbol : {},
|
||||
a = i.iterator || "@@iterator",
|
||||
c = i.asyncIterator || "@@asyncIterator",
|
||||
u = i.toStringTag || "@@toStringTag";
|
||||
function define(t, e, r) {
|
||||
return Object.defineProperty(t, e, {
|
||||
value: r,
|
||||
enumerable: !0,
|
||||
configurable: !0,
|
||||
writable: !0
|
||||
}), t[e];
|
||||
}
|
||||
try {
|
||||
define({}, "");
|
||||
} catch (t) {
|
||||
define = function define(t, e, r) {
|
||||
return t[e] = r;
|
||||
};
|
||||
}
|
||||
function wrap(t, e, r, n) {
|
||||
var i = e && e.prototype instanceof Generator ? e : Generator,
|
||||
a = Object.create(i.prototype),
|
||||
c = new Context(n || []);
|
||||
return o(a, "_invoke", {
|
||||
value: makeInvokeMethod(t, r, c)
|
||||
}), a;
|
||||
}
|
||||
function tryCatch(t, e, r) {
|
||||
try {
|
||||
return {
|
||||
type: "normal",
|
||||
arg: t.call(e, r)
|
||||
};
|
||||
} catch (t) {
|
||||
return {
|
||||
type: "throw",
|
||||
arg: t
|
||||
};
|
||||
}
|
||||
}
|
||||
e.wrap = wrap;
|
||||
var h = "suspendedStart",
|
||||
l = "suspendedYield",
|
||||
f = "executing",
|
||||
s = "completed",
|
||||
y = {};
|
||||
function Generator() {}
|
||||
function GeneratorFunction() {}
|
||||
function GeneratorFunctionPrototype() {}
|
||||
var p = {};
|
||||
define(p, a, function () {
|
||||
return this;
|
||||
});
|
||||
var d = Object.getPrototypeOf,
|
||||
v = d && d(d(values([])));
|
||||
v && v !== r && n.call(v, a) && (p = v);
|
||||
var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);
|
||||
function defineIteratorMethods(t) {
|
||||
["next", "throw", "return"].forEach(function (e) {
|
||||
define(t, e, function (t) {
|
||||
return this._invoke(e, t);
|
||||
});
|
||||
});
|
||||
}
|
||||
function AsyncIterator(t, e) {
|
||||
function invoke(r, o, i, a) {
|
||||
var c = tryCatch(t[r], t, o);
|
||||
if ("throw" !== c.type) {
|
||||
var u = c.arg,
|
||||
h = u.value;
|
||||
return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) {
|
||||
invoke("next", t, i, a);
|
||||
}, function (t) {
|
||||
invoke("throw", t, i, a);
|
||||
}) : e.resolve(h).then(function (t) {
|
||||
u.value = t, i(u);
|
||||
}, function (t) {
|
||||
return invoke("throw", t, i, a);
|
||||
});
|
||||
}
|
||||
a(c.arg);
|
||||
}
|
||||
var r;
|
||||
o(this, "_invoke", {
|
||||
value: function value(t, n) {
|
||||
function callInvokeWithMethodAndArg() {
|
||||
return new e(function (e, r) {
|
||||
invoke(t, n, e, r);
|
||||
});
|
||||
}
|
||||
return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
|
||||
}
|
||||
});
|
||||
}
|
||||
function makeInvokeMethod(e, r, n) {
|
||||
var o = h;
|
||||
return function (i, a) {
|
||||
if (o === f) throw Error("Generator is already running");
|
||||
if (o === s) {
|
||||
if ("throw" === i) throw a;
|
||||
return {
|
||||
value: t,
|
||||
done: !0
|
||||
};
|
||||
}
|
||||
for (n.method = i, n.arg = a;;) {
|
||||
var c = n.delegate;
|
||||
if (c) {
|
||||
var u = maybeInvokeDelegate(c, n);
|
||||
if (u) {
|
||||
if (u === y) continue;
|
||||
return u;
|
||||
}
|
||||
}
|
||||
if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) {
|
||||
if (o === h) throw o = s, n.arg;
|
||||
n.dispatchException(n.arg);
|
||||
} else "return" === n.method && n.abrupt("return", n.arg);
|
||||
o = f;
|
||||
var p = tryCatch(e, r, n);
|
||||
if ("normal" === p.type) {
|
||||
if (o = n.done ? s : l, p.arg === y) continue;
|
||||
return {
|
||||
value: p.arg,
|
||||
done: n.done
|
||||
};
|
||||
}
|
||||
"throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg);
|
||||
}
|
||||
};
|
||||
}
|
||||
function maybeInvokeDelegate(e, r) {
|
||||
var n = r.method,
|
||||
o = e.iterator[n];
|
||||
if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y;
|
||||
var i = tryCatch(o, e.iterator, r.arg);
|
||||
if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y;
|
||||
var a = i.arg;
|
||||
return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y);
|
||||
}
|
||||
function pushTryEntry(t) {
|
||||
var e = {
|
||||
tryLoc: t[0]
|
||||
};
|
||||
1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);
|
||||
}
|
||||
function resetTryEntry(t) {
|
||||
var e = t.completion || {};
|
||||
e.type = "normal", delete e.arg, t.completion = e;
|
||||
}
|
||||
function Context(t) {
|
||||
this.tryEntries = [{
|
||||
tryLoc: "root"
|
||||
}], t.forEach(pushTryEntry, this), this.reset(!0);
|
||||
}
|
||||
function values(e) {
|
||||
if (e || "" === e) {
|
||||
var r = e[a];
|
||||
if (r) return r.call(e);
|
||||
if ("function" == typeof e.next) return e;
|
||||
if (!isNaN(e.length)) {
|
||||
var o = -1,
|
||||
i = function next() {
|
||||
for (; ++o < e.length;) {
|
||||
if (n.call(e, o)) return next.value = e[o], next.done = !1, next;
|
||||
}
|
||||
return next.value = t, next.done = !0, next;
|
||||
};
|
||||
return i.next = i;
|
||||
}
|
||||
}
|
||||
throw new TypeError(_typeof(e) + " is not iterable");
|
||||
}
|
||||
return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
|
||||
value: GeneratorFunctionPrototype,
|
||||
configurable: !0
|
||||
}), o(GeneratorFunctionPrototype, "constructor", {
|
||||
value: GeneratorFunction,
|
||||
configurable: !0
|
||||
}), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) {
|
||||
var e = "function" == typeof t && t.constructor;
|
||||
return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name));
|
||||
}, e.mark = function (t) {
|
||||
return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t;
|
||||
}, e.awrap = function (t) {
|
||||
return {
|
||||
__await: t
|
||||
};
|
||||
}, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {
|
||||
return this;
|
||||
}), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {
|
||||
void 0 === i && (i = Promise);
|
||||
var a = new AsyncIterator(wrap(t, r, n, o), i);
|
||||
return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {
|
||||
return t.done ? t.value : a.next();
|
||||
});
|
||||
}, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () {
|
||||
return this;
|
||||
}), define(g, "toString", function () {
|
||||
return "[object Generator]";
|
||||
}), e.keys = function (t) {
|
||||
var e = Object(t),
|
||||
r = [];
|
||||
for (var n in e) {
|
||||
r.push(n);
|
||||
}
|
||||
return r.reverse(), function next() {
|
||||
for (; r.length;) {
|
||||
var t = r.pop();
|
||||
if (t in e) return next.value = t, next.done = !1, next;
|
||||
}
|
||||
return next.done = !0, next;
|
||||
};
|
||||
}, e.values = values, Context.prototype = {
|
||||
constructor: Context,
|
||||
reset: function reset(e) {
|
||||
if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) {
|
||||
"t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);
|
||||
}
|
||||
},
|
||||
stop: function stop() {
|
||||
this.done = !0;
|
||||
var t = this.tryEntries[0].completion;
|
||||
if ("throw" === t.type) throw t.arg;
|
||||
return this.rval;
|
||||
},
|
||||
dispatchException: function dispatchException(e) {
|
||||
if (this.done) throw e;
|
||||
var r = this;
|
||||
function handle(n, o) {
|
||||
return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o;
|
||||
}
|
||||
for (var o = this.tryEntries.length - 1; o >= 0; --o) {
|
||||
var i = this.tryEntries[o],
|
||||
a = i.completion;
|
||||
if ("root" === i.tryLoc) return handle("end");
|
||||
if (i.tryLoc <= this.prev) {
|
||||
var c = n.call(i, "catchLoc"),
|
||||
u = n.call(i, "finallyLoc");
|
||||
if (c && u) {
|
||||
if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
|
||||
if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
|
||||
} else if (c) {
|
||||
if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
|
||||
} else {
|
||||
if (!u) throw Error("try statement without catch or finally");
|
||||
if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
abrupt: function abrupt(t, e) {
|
||||
for (var r = this.tryEntries.length - 1; r >= 0; --r) {
|
||||
var o = this.tryEntries[r];
|
||||
if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
|
||||
var i = o;
|
||||
break;
|
||||
}
|
||||
}
|
||||
i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
|
||||
var a = i ? i.completion : {};
|
||||
return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a);
|
||||
},
|
||||
complete: function complete(t, e) {
|
||||
if ("throw" === t.type) throw t.arg;
|
||||
return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y;
|
||||
},
|
||||
finish: function finish(t) {
|
||||
for (var e = this.tryEntries.length - 1; e >= 0; --e) {
|
||||
var r = this.tryEntries[e];
|
||||
if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;
|
||||
}
|
||||
},
|
||||
"catch": function _catch(t) {
|
||||
for (var e = this.tryEntries.length - 1; e >= 0; --e) {
|
||||
var r = this.tryEntries[e];
|
||||
if (r.tryLoc === t) {
|
||||
var n = r.completion;
|
||||
if ("throw" === n.type) {
|
||||
var o = n.arg;
|
||||
resetTryEntry(r);
|
||||
}
|
||||
return o;
|
||||
}
|
||||
}
|
||||
throw Error("illegal catch attempt");
|
||||
},
|
||||
delegateYield: function delegateYield(e, r, n) {
|
||||
return this.delegate = {
|
||||
iterator: values(e),
|
||||
resultName: r,
|
||||
nextLoc: n
|
||||
}, "next" === this.method && (this.arg = t), y;
|
||||
}
|
||||
}, e;
|
||||
}
|
||||
module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
||||
|
||||
/***/ }),
|
||||
/* 57 */
|
||||
/*!*****************************************************************!*\
|
||||
!*** ./node_modules/@babel/runtime/helpers/asyncToGenerator.js ***!
|
||||
\*****************************************************************/
|
||||
/*! no static exports found */
|
||||
/***/ (function(module, exports) {
|
||||
|
||||
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
||||
try {
|
||||
var info = gen[key](arg);
|
||||
var value = info.value;
|
||||
} catch (error) {
|
||||
reject(error);
|
||||
return;
|
||||
}
|
||||
if (info.done) {
|
||||
resolve(value);
|
||||
} else {
|
||||
Promise.resolve(value).then(_next, _throw);
|
||||
}
|
||||
}
|
||||
function _asyncToGenerator(fn) {
|
||||
return function () {
|
||||
var self = this,
|
||||
args = arguments;
|
||||
return new Promise(function (resolve, reject) {
|
||||
var gen = fn.apply(self, args);
|
||||
function _next(value) {
|
||||
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
||||
}
|
||||
function _throw(err) {
|
||||
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
||||
}
|
||||
_next(undefined);
|
||||
});
|
||||
};
|
||||
}
|
||||
module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;
|
||||
|
||||
/***/ }),
|
||||
/* 58 */
|
||||
/*!***********************************************************!*\
|
||||
!*** C:/gs/project/官网小程序demo/官网小程序demo_uni/api/public.js ***!
|
||||
\***********************************************************/
|
||||
/*! no static exports found */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
|
||||
|
||||
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = void 0;
|
||||
exports.getCategories = getCategories;
|
||||
exports.getCountries = getCountries;
|
||||
exports.getGoods = getGoods;
|
||||
exports.getGoodsDetail = getGoodsDetail;
|
||||
exports.getHomeGoods = getHomeGoods;
|
||||
exports.getTagGroups = getTagGroups;
|
||||
exports.getTags = getTags;
|
||||
var _request = _interopRequireDefault(__webpack_require__(/*! ./request.js */ 59));
|
||||
/**
|
||||
* 公共路由接口封装(/public/*)
|
||||
* 注:响应拦截器暂未做业务规范拦截,调用方拿到的是 uni.request 原始 response 结构 { statusCode, data, header ... }
|
||||
*/
|
||||
|
||||
var PREFIX = '/public';
|
||||
|
||||
/**
|
||||
* 获取商品分类树
|
||||
* @param {Object} [params]
|
||||
* @param {string|number} [params.countryId] 国家 ID,不传时返回全部国家
|
||||
*/
|
||||
function getCategories(params) {
|
||||
return _request.default.get("".concat(PREFIX, "/categories"), params);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取有商品的国家列表
|
||||
*/
|
||||
function getCountries() {
|
||||
return _request.default.get("".concat(PREFIX, "/countries"));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取有商品的标签列表
|
||||
*/
|
||||
function getTags() {
|
||||
return _request.default.get("".concat(PREFIX, "/tags"));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取标签组及标签筛选项
|
||||
* @param {Object} [params]
|
||||
* @param {string|number} [params.countryId] 国家 ID,不传时返回全部国家
|
||||
*/
|
||||
function getTagGroups(params) {
|
||||
return _request.default.get("".concat(PREFIX, "/tag-groups"), params);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页获取商品
|
||||
* @param {Object} params
|
||||
* @param {number} [params.page]
|
||||
* @param {number} [params.pageSize]
|
||||
* @param {string|number} [params.countryId]
|
||||
* @param {string|number} [params.categoryId]
|
||||
* @param {string} [params.keyword]
|
||||
*/
|
||||
function getGoods(params) {
|
||||
return _request.default.get("".concat(PREFIX, "/goods"), params);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取商品完整详情
|
||||
* @param {string|number} goodId 商品 ID(替换路径变量 {goodId})
|
||||
*/
|
||||
function getGoodsDetail(goodId) {
|
||||
return _request.default.get("".concat(PREFIX, "/goods/").concat(goodId));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取首页商品(可按国家返回)
|
||||
* @param {Object} [params]
|
||||
* @param {string|number} [params.countryId]
|
||||
*/
|
||||
function getHomeGoods(params) {
|
||||
return _request.default.get("".concat(PREFIX, "/home-goods"), params);
|
||||
}
|
||||
var _default = {
|
||||
getCategories: getCategories,
|
||||
getCountries: getCountries,
|
||||
getTags: getTags,
|
||||
getTagGroups: getTagGroups,
|
||||
getGoods: getGoods,
|
||||
getGoodsDetail: getGoodsDetail,
|
||||
getHomeGoods: getHomeGoods
|
||||
};
|
||||
exports.default = _default;
|
||||
|
||||
/***/ }),
|
||||
/* 59 */
|
||||
/*!************************************************************!*\
|
||||
!*** C:/gs/project/官网小程序demo/官网小程序demo_uni/api/request.js ***!
|
||||
\************************************************************/
|
||||
/*! no static exports found */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
/* WEBPACK VAR INJECTION */(function(uni) {
|
||||
|
||||
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.BASE_URL = void 0;
|
||||
exports.buildUrl = buildUrl;
|
||||
exports.default = void 0;
|
||||
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
|
||||
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
||||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
||||
/**
|
||||
* uni-app 简易请求封装
|
||||
* - 统一拼接 BASE_URL + path
|
||||
* - 注入 token header
|
||||
* - Promise 化,提供 get/post/put/delete 快捷方法
|
||||
*
|
||||
* 用法:
|
||||
* import request from '@/api/request.js'
|
||||
* request.get('/user/info', { id: 1 })
|
||||
* request.post('/user/login', { username, password })
|
||||
*/
|
||||
|
||||
// 基础路径:修改此处即可切换后端地址
|
||||
var BASE_URL = 'https://official.inkreach.cc/api/';
|
||||
exports.BASE_URL = BASE_URL;
|
||||
// 默认配置
|
||||
var TIMEOUT = 30000;
|
||||
var DEFAULT_HEADER = {
|
||||
'Content-Type': 'application/json'
|
||||
};
|
||||
|
||||
// 统一拼装 URL:完整地址直接返回,否则 BASE_URL + path
|
||||
// 图片/静态资源路径也可直接调用,得到完整可访问地址
|
||||
function buildUrl(url) {
|
||||
if (!url) return '';
|
||||
if (/^https?:\/\//i.test(url)) return url;
|
||||
var base = BASE_URL.replace(/\/+$/, '');
|
||||
var path = url.replace(/^\/+/, '');
|
||||
return path ? "".concat(base, "/").concat(path) : base;
|
||||
}
|
||||
|
||||
// 统一取 header(注入 token)
|
||||
function buildHeader(extraHeader) {
|
||||
var header = Object.assign({}, DEFAULT_HEADER, extraHeader || {});
|
||||
var token = uni.getStorageSync('token');
|
||||
if (token) header['Authorization'] = "Bearer ".concat(token);
|
||||
return header;
|
||||
}
|
||||
|
||||
/**
|
||||
* 核心请求方法
|
||||
* @param {Object} options
|
||||
* @param {string} options.url 相对路径或完整 URL
|
||||
* @param {string} [options.method='GET']
|
||||
* @param {Object} [options.data] 请求参数 / body
|
||||
* @param {Object} [options.header] 额外 header
|
||||
* @returns {Promise<any>}
|
||||
*/
|
||||
function request() {
|
||||
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
||||
return new Promise(function (resolve, reject) {
|
||||
uni.request({
|
||||
url: buildUrl(options.url || ''),
|
||||
method: (options.method || 'GET').toUpperCase(),
|
||||
data: options.data || {},
|
||||
header: buildHeader(options.header),
|
||||
timeout: TIMEOUT,
|
||||
dataType: 'json',
|
||||
success: resolve,
|
||||
fail: reject
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// 快捷方法
|
||||
request.get = function (url, data, options) {
|
||||
return request(_objectSpread({
|
||||
url: url,
|
||||
method: 'GET',
|
||||
data: data
|
||||
}, options));
|
||||
};
|
||||
request.post = function (url, data, options) {
|
||||
return request(_objectSpread({
|
||||
url: url,
|
||||
method: 'POST',
|
||||
data: data
|
||||
}, options));
|
||||
};
|
||||
request.put = function (url, data, options) {
|
||||
return request(_objectSpread({
|
||||
url: url,
|
||||
method: 'PUT',
|
||||
data: data
|
||||
}, options));
|
||||
};
|
||||
request.delete = function (url, data, options) {
|
||||
return request(_objectSpread({
|
||||
url: url,
|
||||
method: 'DELETE',
|
||||
data: data
|
||||
}, options));
|
||||
};
|
||||
var _default = request;
|
||||
exports.default = _default;
|
||||
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
|
||||
|
||||
/***/ }),
|
||||
/* 60 */
|
||||
/*!*****************************************************************!*\
|
||||
!*** C:/gs/project/官网小程序demo/官网小程序demo_uni/pages/index/mock.js ***!
|
||||
\*****************************************************************/
|
||||
/*! no static exports found */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.trustStats = exports.stepList = exports.reasonList = exports.podProducts = exports.featureList = exports.ctaSection = exports.countryTabs = exports.companyIntro = exports.companyFeatures = void 0;
|
||||
// 首页 mock 数据
|
||||
// 设计稿尺寸: 390px 宽度,1px ≈ 2rpx
|
||||
|
||||
// Hero 区 4个指标
|
||||
var trustStats = [{
|
||||
value: '11',
|
||||
unit: '国',
|
||||
label: '全球本土工厂'
|
||||
}, {
|
||||
value: '24',
|
||||
unit: 'H',
|
||||
label: '极速发货'
|
||||
}, {
|
||||
value: '1000',
|
||||
unit: 'W+',
|
||||
label: '订单履约'
|
||||
}, {
|
||||
value: '800',
|
||||
unit: '+',
|
||||
label: '产品生产'
|
||||
}];
|
||||
|
||||
// 4步流程
|
||||
exports.trustStats = trustStats;
|
||||
var stepList = [{
|
||||
step: '01',
|
||||
title: '选择产品',
|
||||
desc: '海量精选产品,满足多元定制需求'
|
||||
}, {
|
||||
step: '02',
|
||||
title: '上传设计',
|
||||
desc: '可视化编辑器,轻松实现创意落地'
|
||||
}, {
|
||||
step: '03',
|
||||
title: '在线销售',
|
||||
desc: '一键开通店铺,多渠道触达目标客群'
|
||||
}, {
|
||||
step: '04',
|
||||
title: '生产配送',
|
||||
desc: '智能化柔性生产,快速响应全球配送'
|
||||
}];
|
||||
|
||||
// 全球POD货盘 - 国家tab
|
||||
exports.stepList = stepList;
|
||||
var countryTabs = [{
|
||||
id: 'us',
|
||||
name: '美国'
|
||||
}, {
|
||||
id: 'ca',
|
||||
name: '加拿大'
|
||||
}, {
|
||||
id: 'mx',
|
||||
name: '墨西哥'
|
||||
}, {
|
||||
id: 'br',
|
||||
name: '巴西'
|
||||
}, {
|
||||
id: 'ar',
|
||||
name: '阿根廷'
|
||||
}, {
|
||||
id: 'cl',
|
||||
name: '智利'
|
||||
}, {
|
||||
id: 'co',
|
||||
name: '哥伦比亚'
|
||||
}, {
|
||||
id: 'pe',
|
||||
name: '秘鲁'
|
||||
}];
|
||||
|
||||
// 全球POD货盘 - 产品列表
|
||||
exports.countryTabs = countryTabs;
|
||||
var podProducts = [{
|
||||
id: 1,
|
||||
name: '女士短款露脐T恤',
|
||||
image: '/static/images/home/Rectangle_63_1446_1437.png'
|
||||
}, {
|
||||
id: 2,
|
||||
name: '女士短款露脐T恤',
|
||||
image: '/static/images/home/Rectangle_181_1455_1450.png'
|
||||
}, {
|
||||
id: 3,
|
||||
name: '女士短款露脐T恤',
|
||||
image: '/static/images/home/Rectangle_63_1455_1461.png'
|
||||
}, {
|
||||
id: 4,
|
||||
name: '女士短款露脐T恤',
|
||||
image: '/static/images/home/Rectangle_181_1455_1456.png'
|
||||
}];
|
||||
|
||||
// 平台功能卡片
|
||||
exports.podProducts = podProducts;
|
||||
var featureList = [{
|
||||
step: '01',
|
||||
title: '设计工具',
|
||||
desc: '轻松设计,快速定制'
|
||||
}, {
|
||||
step: '02',
|
||||
title: '自动化履约',
|
||||
desc: '从生产到配送,全程无忧,准时交付'
|
||||
}, {
|
||||
step: '03',
|
||||
title: '全球配送',
|
||||
desc: '全球11国自营本土工厂'
|
||||
}, {
|
||||
step: '04',
|
||||
title: '店铺集成',
|
||||
desc: '与全球主流电商平台无缝对接'
|
||||
}];
|
||||
|
||||
// 为什么选择 - 4个优势
|
||||
exports.featureList = featureList;
|
||||
var reasonList = [{
|
||||
id: 1,
|
||||
title: '零库存',
|
||||
icon: '/static/icons/home/零库存图标.svg'
|
||||
}, {
|
||||
id: 2,
|
||||
title: '快速生产',
|
||||
icon: '/static/icons/home/快速生产图标.svg'
|
||||
}, {
|
||||
id: 3,
|
||||
title: '优质产品',
|
||||
icon: '/static/icons/home/优质产品图标.svg'
|
||||
}, {
|
||||
id: 4,
|
||||
title: '全球配送',
|
||||
icon: '/static/icons/home/全球配送图标.svg'
|
||||
}];
|
||||
|
||||
// 公司简介
|
||||
exports.reasonList = reasonList;
|
||||
var companyIntro = {
|
||||
title: '公司简介',
|
||||
sloganMain: '用科技重新定义POD供应链',
|
||||
sloganSub: '让每一个创意,都能高效抵达全球',
|
||||
desc: 'Inkreach印美达全球,一家以AI与智能印花技术驱动的全球化POD柔性供应链公司,致力于成为全球创业者最可靠的成长伙伴。',
|
||||
cols: [{
|
||||
title: '服务对象与场景',
|
||||
text: '服务于数千家跨境独立站、TikTok、TEMU、SHEIN等平台商家,提供从海外生产到末端物流的一站式供应链服务,让电商创业者专注增长,无惧后端履约。'
|
||||
}, {
|
||||
title: '愿景',
|
||||
text: '我们坚信,每一个创意都值得被完美呈现。 Inkreach将持续深耕智能供应链生态,用科技消除制造壁垒,让全球创业者专注发挥创造力,共同书写个性化电商的新纪元。'
|
||||
}]
|
||||
};
|
||||
|
||||
// 公司简介 - 4个核心能力
|
||||
exports.companyIntro = companyIntro;
|
||||
var companyFeatures = [{
|
||||
id: 1,
|
||||
title: '前沿印花技术',
|
||||
desc: '搭载最新智能印花工艺,品质与效率兼得',
|
||||
icon: '/static/icons/home/ability_printing.svg'
|
||||
}, {
|
||||
id: 2,
|
||||
title: '深度AI应用',
|
||||
desc: '从设计到生产,全链路智能化提效',
|
||||
icon: '/static/icons/home/ability_ai.svg'
|
||||
}, {
|
||||
id: 3,
|
||||
title: '全球智能工厂',
|
||||
desc: '11国自营本土化POD工厂,日均产能超20万单',
|
||||
icon: '/static/icons/home/ability_global.svg'
|
||||
}, {
|
||||
id: 4,
|
||||
title: '一站式柔性交付',
|
||||
desc: '覆盖生产至物流,助力品牌从概念到商业落地',
|
||||
icon: '/static/icons/home/ability_flexible.svg'
|
||||
}];
|
||||
|
||||
// 底部CTA
|
||||
exports.companyFeatures = companyFeatures;
|
||||
var ctaSection = {
|
||||
qrImage: '/static/images/home/Rectangle_187_1470_1653.png',
|
||||
bgImage: '/static/images/home/image_26_1496_1761.png',
|
||||
textImage: '/static/images/home/image_28_1498_1767.png',
|
||||
text: '联系我们,开启你的全球生意新篇'
|
||||
};
|
||||
exports.ctaSection = ctaSection;
|
||||
|
||||
/***/ })
|
||||
]]);
|
||||
//# sourceMappingURL=../../.sourcemap/mp-weixin/common/vendor.js.map
|
||||
Reference in New Issue
Block a user