由于愚蠢的版权侵犯,我不得不重命名这个包。
请注意,代码中没有任何更改(仍然是相同的命名空间)。仅包名称已更改。命名空间可能会在稍后的主要版本中发生更改。
laravel feedback component允许您轻松在网站上实现客户反馈组件。它是用 VueJS 构建的,但可以在任何类型的 Laravel 项目中实现。您只需在布局中添加几行即可。
您可能知道很多网站都使用对讲机的聊天系统,或者 crisp、chat.io 和更多客户聊天系统,让您能够从网站访问者那里获得反馈。
laravel feedback component是一个开源且可定制的替代品,采用相同的布局。安装后,您将在您的网站上看到该组件。
我们还有一个 Nova 工具!
我将致力于在laravel feedback component中实现一个聊天系统,该系统可能会与 Laravel Nova 一起使用。这是针对 V2 的计划。目前,您只能收集访客的反馈。
laravel 反馈组件 " data-animated-image="" style="max-width: 100%;">
您可以使用 Composer 安装laravel feedback component :
composer require mydnic/laravel-kustomer
安装laravel feedback component后,使用kustomer:publish
Artisan 命令发布其资产。安装软件包后,您还应该运行 migrate 命令:
php artisan kustomer:publish
php artisan migrate
这将创建一个新的反馈表。
您可以通过编辑config/kustomer.php
根据需要更新组件的配置。
我鼓励您仔细阅读此配置文件。
您在组件中看到的所有文本都是可翻译的。发布资产后,您将在resources/lang/vendor/en/kustomer.php中找到文本
反馈标签也存储在此文件中,并且feedbacks
数组必须与配置文件中的数组匹配。
在您的public/
目录中,您将找到需要包含到 html 布局中的已编译 css 和 js 文件。
将这些包含在您希望组件显示的页面上:
< head >
< script src = " {{ asset ( ' vendor/kustomer/js/kustomer.js ' ) } } " defer ></ script >
</ head >
< body >
@include ( ' kustomer::kustomer ' )
</ body >
注意如果您运行 VueJS 应用程序,则必须在
#app
容器之外添加#kustomer
容器。这是因为 kustomer 默认运行在自己的 vue 实例上。如果您想更改此设置,请参阅将资产包含在您自己的资产中
更新此包时,您应该重新发布资产:
php artisan vendor:publish --tag=kustomer-assets --force
这将重新发布已编译的 JS 和 CSS 文件,以及位于public/vendor/kustomer/assets
中的 svg 文件。如果您想使用自己的镜像,请更新配置文件。
或者,您可以将.vue
和.sass
文件导入到您自己的resources/js
和resources/sass
文件夹中,从而允许您大量自定义反馈组件组件和布局。
这还将使您最终在应用程序中只得到一个已编译的.js
和.css
。
但是,如果您尝试更新最新版本,则应该小心,因为您的更改可能会丢失。
需要两个 npm 包:
您可以通过npm 或yarn 添加它们。
我们使用 axios 发出 HTTP 请求来发送反馈,因此请确保 axios 已安装并在您的 vue 应用程序中进行配置。
与 Laravel 脚手架 javascript 中一样,axios 应该如下配置:
window . axios = require ( 'axios' ) ;
window . axios . defaults . headers . common [ 'X-Requested-With' ] = 'XMLHttpRequest' ;
let token = document . head . querySelector ( 'meta[name="csrf-token"]' ) ;
if ( token ) {
window . axios . defaults . headers . common [ 'X-CSRF-TOKEN' ] = token . content ;
} else {
console . error ( 'CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token' ) ;
}
发布 VueJS 组件:
php artisan vendor:publish --tag=kustomer-vue-component
发布SASS样式文件:
php artisan vendor:publish --tag=kustomer-sass-component
然后在你的 vue 应用程序中:
// app.js
Vue . component ( 'kustomer' , require ( './components/Kustomer/Kustomer.vue' ) ) ;
// app.scss
@import ' kustomer ' ;
反馈本质上有 4 个属性:
将反馈存储在数据库中后,您可以使用自己的后台来显示和操作数据。
反馈模型的工作方式与任何其他 Eloquent 模型类似,因此在 Laravel 应用程序中使用它非常容易。
使用 Laravel Nova 吗?没问题 !
如果您使用 Laravel Nova,您肯定会需要一个工具来可视化您收到的所有反馈。
您可以在此处安装官方 Laravel Nova 工具。
当新的反馈被正确存储时,我们将调度一个 Laravel 事件。
您可以侦听此事件并触发任何类型的侦听器。接下来发生的事情由你决定!您可以向管理员发送电子邮件、记录一些数据或您能想到的任何内容。
在您的EventServiceProvider
中,您可以更新$listen
属性来添加事件。
protected $ listen = [
' MydnicKustomerEventsNewFeedback ' => [
' AppListenersYourOwnListener ' , // change this
],
// ...
];
Laravel Kustomer 是一款根据 MIT 许可证授权的开源软件。
在此项目中,您会发现一些来自 FlatIcon 的 svg 图标。您可以在自己的项目中随意更改它们。