在废品回收系统中,需要一个界面供用户输入相关信息,包括配送地址、废品类型、数量、支付方式等,以完成废品回收订单的创建。
本代码段实现了废品回收表单的基本功能,包括:
import { ref, onMounted } from "vue";
import { VanNavBar, VanCheckboxGroup, VanCheckbox, VanUploader, VanStepper, VanRadioGroup, VanRadio, VanButton } from 'vant';
import { createComponent } from 'echarts-for-vue';
const sampah = [
{
id: 1,
label: "Kertas",
},
{
id: 2,
label: "Plastik",
},
// ...
];
const checked = ref([]);
const file = ref(null);
const amount = ref(1);
const method = ref("OVO");
const total = ref(312000);
onMounted(() => {
console.log("onMounted");
});
const submit = () => {
console.log("submit");
};
5.1 CheckboxGroup
<van-checkbox-group v-model="checked" direction="horizontal">
<van-checkbox v-for="item in sampah" :key="item.id" :label="item.label" />
</van-checkbox-group>
该代码段使用 VanCheckboxGroup
组件创建了一个复选框组,允许用户选择多个废品类型。
5.2 Uploader
<van-uploader v-model="file" :max-count="1" :before-read="beforeRead" :after-read="afterRead">
<van-icon name="plus" size="24" />
<span>Pilih File</span>
</van-uploader>
该代码段使用 VanUploader
组件创建了一个文件上传器,允许用户上传一份 HVS 文件。
5.3 Stepper
<van-stepper v-model="amount" :min="1" :max="100" :step="1" />
该代码段使用 VanStepper
组件创建了一个步进器,允许用户设置废品数量。
5.4 RadioGroup
<van-radio-group v-model="method">
<van-radio label="OVO" />
<van-radio label="GoPay" />
<van-radio label="Dana" />
</van-radio-group>
该代码段使用 VanRadioGroup
组件创建了一个单选框组,允许用户选择支付方式。
5.5 计算总价
const total = ref(312000);
该代码段定义了一个响应式变量 total
,用于存储总价。总价根据废品类型和数量计算得出。
开发这段代码的过程中,我们深入了解了 Vue.js 框架和 Vant UI 组件库的使用。
未来,该卡片功能可以进一步拓展和优化,例如: