130 lines
4.2 KiB
Vue
130 lines
4.2 KiB
Vue
|
<script setup lang="ts">
|
|||
|
import { ref, unref } from "vue";
|
|||
|
import { message } from "@/utils/message";
|
|||
|
import ReQrcode from "@/components/ReQrcode";
|
|||
|
|
|||
|
defineOptions({
|
|||
|
name: "QrCode"
|
|||
|
});
|
|||
|
|
|||
|
const qrcodeText = "vue-pure-admin";
|
|||
|
|
|||
|
const asyncTitle = ref("");
|
|||
|
setTimeout(() => {
|
|||
|
asyncTitle.value = unref(qrcodeText);
|
|||
|
}, 3000);
|
|||
|
const codeClick = () => {
|
|||
|
message("点击事件", { type: "info" });
|
|||
|
};
|
|||
|
const disabledClick = () => {
|
|||
|
message("失效", { type: "info" });
|
|||
|
};
|
|||
|
</script>
|
|||
|
|
|||
|
<template>
|
|||
|
<div>
|
|||
|
<el-card shadow="never">
|
|||
|
<template #header>
|
|||
|
<div class="font-medium">
|
|||
|
二维码(基于
|
|||
|
<el-link
|
|||
|
href="https://github.com/soldair/node-qrcode"
|
|||
|
target="_blank"
|
|||
|
style="margin: 0 5px 4px 0; font-size: 16px"
|
|||
|
>
|
|||
|
qrcode
|
|||
|
</el-link>
|
|||
|
生成)
|
|||
|
</div>
|
|||
|
<el-link
|
|||
|
class="mt-2"
|
|||
|
href="https://github.com/pure-admin/vue-pure-admin/blob/main/src/views/able/qrcode.vue"
|
|||
|
target="_blank"
|
|||
|
>
|
|||
|
代码位置 src/views/able/qrcode.vue
|
|||
|
</el-link>
|
|||
|
</template>
|
|||
|
<el-row :gutter="20" justify="space-between">
|
|||
|
<el-col :xl="6" :lg="6" :md="12" :sm="24" :xs="24">
|
|||
|
<el-card shadow="hover" class="mb-[10px] text-center">
|
|||
|
<div class="font-bold">基础用法</div>
|
|||
|
<ReQrcode :text="qrcodeText" />
|
|||
|
</el-card>
|
|||
|
</el-col>
|
|||
|
<el-col :xl="6" :lg="6" :md="12" :sm="24" :xs="24">
|
|||
|
<el-card shadow="hover" class="mb-[10px] text-center">
|
|||
|
<div class="font-bold">img标签</div>
|
|||
|
<ReQrcode :text="qrcodeText" tag="img" />
|
|||
|
</el-card>
|
|||
|
</el-col>
|
|||
|
<el-col :xl="6" :lg="6" :md="12" :sm="24" :xs="24">
|
|||
|
<el-card shadow="hover" class="mb-[10px] text-center">
|
|||
|
<div class="font-bold">样式配置</div>
|
|||
|
<ReQrcode
|
|||
|
:text="qrcodeText"
|
|||
|
:options="{
|
|||
|
color: {
|
|||
|
dark: '#55D187',
|
|||
|
light: '#2d8cf0'
|
|||
|
}
|
|||
|
}"
|
|||
|
/>
|
|||
|
</el-card>
|
|||
|
</el-col>
|
|||
|
<el-col :xl="6" :lg="6" :md="12" :sm="24" :xs="24">
|
|||
|
<el-card shadow="hover" class="mb-[10px] text-center">
|
|||
|
<div class="font-bold">点击事件</div>
|
|||
|
<ReQrcode :text="qrcodeText" @click="codeClick" />
|
|||
|
</el-card>
|
|||
|
</el-col>
|
|||
|
<el-col :xl="6" :lg="6" :md="12" :sm="24" :xs="24">
|
|||
|
<el-card shadow="hover" class="mb-[10px] text-center">
|
|||
|
<div class="font-bold">异步内容</div>
|
|||
|
<ReQrcode :text="asyncTitle" />
|
|||
|
</el-card>
|
|||
|
</el-col>
|
|||
|
<el-col :xl="6" :lg="6" :md="12" :sm="24" :xs="24">
|
|||
|
<el-card shadow="hover" class="mb-[10px] text-center">
|
|||
|
<div class="font-bold">失效</div>
|
|||
|
<ReQrcode
|
|||
|
:text="qrcodeText"
|
|||
|
disabled
|
|||
|
@disabled-click="disabledClick"
|
|||
|
/>
|
|||
|
</el-card>
|
|||
|
</el-col>
|
|||
|
<el-col :xl="6" :lg="6" :md="12" :sm="24" :xs="24">
|
|||
|
<el-card shadow="hover" class="mb-[10px] text-center">
|
|||
|
<div class="font-bold">logo配置</div>
|
|||
|
<ReQrcode
|
|||
|
:text="qrcodeText"
|
|||
|
logo="https://avatars.githubusercontent.com/u/44761321?v=4"
|
|||
|
/>
|
|||
|
</el-card>
|
|||
|
</el-col>
|
|||
|
<el-col :xl="6" :lg="6" :md="12" :sm="24" :xs="24">
|
|||
|
<el-card shadow="hover" class="mb-[10px] text-center">
|
|||
|
<div class="font-bold">logo样式</div>
|
|||
|
<ReQrcode
|
|||
|
:text="qrcodeText"
|
|||
|
:logo="{
|
|||
|
src: 'https://avatars.githubusercontent.com/u/44761321?v=4',
|
|||
|
logoSize: 0.2,
|
|||
|
borderSize: 0.05,
|
|||
|
borderRadius: 50,
|
|||
|
bgColor: 'blue'
|
|||
|
}"
|
|||
|
/>
|
|||
|
</el-card>
|
|||
|
</el-col>
|
|||
|
<el-col :xl="6" :lg="6" :md="12" :sm="24" :xs="24">
|
|||
|
<el-card shadow="hover" class="mb-[10px] text-center">
|
|||
|
<div class="font-bold">大小配置</div>
|
|||
|
<ReQrcode :text="qrcodeText" :width="100" />
|
|||
|
</el-card>
|
|||
|
</el-col>
|
|||
|
</el-row>
|
|||
|
</el-card>
|
|||
|
</div>
|
|||
|
</template>
|