终极指南:如何在 React 和 Vue 中集成 At.js 实现智能提及功能

张开发
2026/4/4 19:25:01 15 分钟阅读
终极指南:如何在 React 和 Vue 中集成 At.js 实现智能提及功能
终极指南如何在 React 和 Vue 中集成 At.js 实现智能提及功能【免费下载链接】At.jsAdd Github like mentions autocomplete to your application.项目地址: https://gitcode.com/gh_mirrors/at/At.jsAt.js 是一款强大的前端库能够为你的应用添加类似 GitHub 的智能提及mention自动完成功能。无论是社交平台、协作工具还是内容管理系统集成 At.js 都能让用户在输入时获得流畅的提及体验大幅提升产品交互性。 为什么选择 At.js核心优势解析At.js 作为轻量级提及解决方案具备三大核心优势高度可定制支持自定义触发字符如 、#、数据来源和显示样式跨框架兼容无缝集成 React、Vue 等现代前端框架性能优化高效的输入检测和结果过滤算法确保流畅体验 快速开始At.js 基础安装与配置1. 环境准备首先通过 Git 克隆项目仓库git clone https://gitcode.com/gh_mirrors/at/At.js2. 核心文件引入At.js 的核心实现位于 src/ 目录主要包含src/api.coffee提供核心 API 接口src/controller.coffee处理输入事件和自动完成逻辑src/view.coffee渲染自动完成下拉列表src/jquery.atwho.css基础样式文件⚛️ React 集成方案从基础到高级基础实现步骤安装依赖npm install at.js jquery组件封装import React, { useRef, useEffect } from react; import $ from jquery; import at.js/dist/css/jquery.atwho.css; import at.js; const MentionInput () { const inputRef useRef(null); useEffect(() { const $input $(inputRef.current); $input.atwho({ at: , data: [Alice, Bob, Charlie] }); return () $input.atwho(destroy); }, []); return input ref{inputRef} placeholderType to mention... /; };高级特性配置通过 src/default.coffee 可以查看完整配置选项常用高级配置包括limit限制显示结果数量displayTpl自定义结果显示模板callbacks钩子函数如选择后回调 Vue 集成方案组件化实现Vue 2 实现template textarea v-modelcontent refmentionInput/textarea /template script import $ from jquery; import at.js/dist/css/jquery.atwho.css; import at.js; export default { data() { return { content: }; }, mounted() { $(this.$refs.mentionInput).atwho({ at: #, data: [bug, feature, enhancement] }); }, beforeDestroy() { $(this.$refs.mentionInput).atwho(destroy); } }; /scriptVue 3 组合式 APItemplate input refinput v-modelmessage / /template script setup import { ref, onMounted, onBeforeUnmount } from vue; import $ from jquery; import at.js/dist/css/jquery.atwho.css; import at.js; const input ref(null); const message ref(); onMounted(() { $(input.value).atwho({ at: , data: [Vue, React, Angular] }); }); onBeforeUnmount(() { $(input.value).atwho(destroy); }); /script 自定义样式与交互优化At.js 提供了丰富的样式定制能力通过修改 src/jquery.atwho.css 可以实现品牌化外观/* 自定义提及文本样式 */ .atwho-inserted { color: #2563eb; font-weight: bold; } /* 自定义下拉菜单 */ .atwho-view { border: 1px solid #e5e7eb; border-radius: 0.375rem; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); } 实战案例常见使用场景1. 社交媒体平台在评论区实现 用户 功能参考 examples/hashtags.html 中的实现方式$(#comment-input).atwho({ at: , data: /api/users, // 从后端API获取用户数据 searchKey: username });2. 协作编辑工具结合富文本编辑器使用如 TinyMCE 或 Medium Editor项目提供了 examples/tinyMCE.html 和 examples/medium-editor.html 参考示例。 故障排除与常见问题问题1自动完成不触发检查是否正确引入了 jQuery 和 Caret.js 依赖At.js 需要这两个库的支持。相关依赖配置可参考 bower.json 和 package.json。问题2在框架中事件冲突确保在组件卸载时调用$(element).atwho(destroy)清理事件监听避免内存泄漏。 深入学习资源完整 API 文档src/api.coffee测试用例spec/javascripts/更多示例examples/通过本指南你已经掌握了在 React 和 Vue 项目中集成 At.js 的核心方法。无论是简单的提及功能还是复杂的自定义场景At.js 都能提供稳定高效的解决方案为你的应用增添专业的用户体验。【免费下载链接】At.jsAdd Github like mentions autocomplete to your application.项目地址: https://gitcode.com/gh_mirrors/at/At.js创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

更多文章