import { useState } from "react";
import { View, Text, Image } from "@tarojs/components";
import Taro, { useRouter } from "@tarojs/taro";
import PageCustom from "@/components/page-custom/index";
import NavBarNormal from "@/components/nav-bar-normal/index";
import Popup from "@/components/popup/popup";
import editorStyle from "../editor.module.less";
import { useCharacterStore } from "@/store/characterStore";
import { useComponentStore } from "@/store/componentStore";
import WemetaInput from "@/components/wemeta-input/index";
export default function Index() {
const router = useRouter();
const { id } = router.params;
const deltaNum = id ? 1 : 2;
let currentComponent = useComponentStore((state) => state.currentComponent);
const character = useCharacterStore((state) => state.character);
const { saveComponent } = useComponentStore();
const loading = useComponentStore((state) => state.loading);
const { value } = currentComponent?.data ?? {};
const [storeProductValue, setStoreProductValue] = useState<{
appid: string;
productId: string;
}>(value ?? {});
const [show, setShow] = useState(false);
const [tipsType, setTipsType] = useState(1);
const handleSave = async () => {
if (loading) {
return;
}
if (!storeProductValue.appid || !storeProductValue.productId) {
return;
}
const c = {
data: {
value: storeProductValue,
layout: 'mini',
},
enabled: currentComponent?.enabled ?? true,
id: currentComponent?.id,
name: currentComponent?.name ?? "微信小店商品",
characterProfileId:
currentComponent?.characterProfileId ?? character?.profileId,
type: "storeProduct",
};
console.log(c);
await saveComponent(c);
};
const handleNavBack = async () => {
await handleSave();
};
const setValueByKey = (key: string, v: string) => {
setStoreProductValue((prev)=> {
return {
...prev,
[key]: v
}
});
};
const showTips = (type: number) => () => {
setTipsType(type);
setShow(true);
};
const renderTips = (type: number) => {
if (type === 1) {
return (
<>
🌟 小绿提示:
通过微信小店后台 - 商品管理 - 商品列表 - 规格/编码获取。
>
);
}
return (
<>
🌟 小绿提示:
通过微信小店后台 - 商品管理 - 商品规格/编码
>
);
};
return (
填写小店商品信息
小店ID
如何获取?
setValueByKey("appid", value)}
placeholder="长按粘贴小店ID..."
/>
商品ID
如何获取?
setValueByKey("productId", value)}
placeholder="长按粘贴商品ID..."
/>
{renderTips(tipsType)}
setShow(false)}>知道了
);
}