一旦安装了 AI Elements Vue 组件,你就可以像使用任何其他 Vue 组件一样导入并在应用程序中使用它。这些组件作为代码库的一部分添加(不是隐藏在库中),因此使用起来非常自然。
安装 AI Elements Vue 组件后,你可以像使用任何其他 Vue 组件一样在应用程序中使用它们。例如:
ConversationExample.vue
<script setup lang="ts">
import { useChat } from '@ai-sdk/vue'
import { Message, MessageContent, MessageResponse } from '@/components/ai-elements/message'
const { messages } = useChat()
</script>
<template>
<div>
<Message
v-for="(msg, index) in messages"
:key="index"
:from="msg.role"
>
<MessageContent>
<template
v-for="(part, i) in msg.parts"
>
<MessageResponse
v-if="part.type === 'text'"
:key="`${msg.role}-${i}`"
>
{{ part.text }}
</MessageResponse>
</template>
</MessageContent>
</Message>
</div>
</template>
在上面的示例中,我们从 AI Elements Vue 目录导入 Message 组件并将其包含在 Vue SFC 模板中。然后我们将其与 MessageContent 和 MessageResponse 子组件组合使用。你可以像自己编写的组件一样对组件进行样式设置或配置——由于代码存在于你的项目中,你甚至可以打开组件文件查看其工作原理或进行自定义修改。
所有 AI Elements Vue 组件都尽可能接受原始属性。例如,Message 组件扩展了 HTMLAttributes,因此你可以传递 div 支持的任何 props。这使得使用你自己的样式或功能扩展组件变得容易。
如果你通过重新运行 npx ai-elements-vue@latest 来重新安装 AI Elements Vue,CLI
会在覆盖文件之前询问,以便你可以保存所做的任何自定义更改。
安装后,无需额外设置。组件的样式(Tailwind CSS 类)和脚本已经集成。你可以立即在应用程序中开始与组件交互。
例如,如果你想移除 Message 上的圆角,请转到 components/ai-elements/message/MessageContent.vue 并按如下方式删除 rounded-lg:
components/ai-elements/message/MessageContent.vue
<script setup lang="ts">
import { computed } from 'vue'
interface Props {
class?: string
}
const props = defineProps<Props>()
const classes = computed(() => [
'flex flex-col gap-2 overflow-hidden px-4 py-3 text-foreground text-sm',
'group-[.is-user]:bg-primary group-[.is-user]:text-primary-foreground',
'group-[.is-assistant]:bg-secondary group-[.is-assistant]:text-foreground',
'is-user:dark',
props.class,
])
</script>
<template>
<div :class="classes">
<slot />
</div>
</template>