【发布时间】:2019-02-22 12:27:24
【问题描述】:
我在以下类中定义了我的最小/最大长度值:
class MinMaxValuesUser {
const Min_UserName = 6;
const Max_UserName = 30;
}
以下是请求类中使用最小最大值而不是硬编码的规则。
public function messages() {
return [
"Min_UserName.min" => trans("Profile.Min_UserName"),
"Max_UserName.max" => trans("Profile.Max_UserName")
];
}
public function rules() {
return [
"UserName" => "min:" . MinMaxValuesUser::Min_UserName
. "|max:" . MinMaxValuesUser::Max_UserName
];
}
以下是我使用相同服务器端类的 JQuery Validate 代码。
$('form#frmProfile').validate({
rules: {
UserName: {
minlength: {!! \App\MinMaxValues\MinMaxValuesUser::Min_UserName !!},
maxlength: {!! \App\MinMaxValues\MinMaxValuesUser::Max_UserName !!}
}
}
});
问题
由于我写了很多代码,所以我开始使用已经嵌入在 Laravel 中的 Vue.js。在这里一切都很好
但我们知道 vue.js 是一个前端框架并在客户端加载,因此将无法使用上述服务器端类来保持最小最大数量集中。
请建议如何摆脱这个问题。
【问题讨论】:
-
我们的 Vue 应用程序对
/api/config进行 HTTP 调用,以获取在 Vuex 存储中操作所需的各种值。 -
你能告诉
/api/config的位置以及vue.js存储在哪里吗? -
我们创建了它。我们创建了一个 Laravel 路由,它输出一个 JSON 响应,包括我们希望 Vue 应用程序拥有的各种配置项。它不是内置的。
-
使用全局 JS 变量创建一个刀片文件,这些变量是类中的常量。您还可以使用中间件来知道将这些变量放在哪里。我没有,只是一个想法
-
@ceejayoz:你能分享任何示例代码吗?
标签: laravel vue.js laravel-5.6 laravel-blade laravel-5.7