我想知道以多种不同语言显示我的Spark计划功能的最佳方法是什么。
假设我具有以下功能
Spark::plan('Premium', 'monthly-artist-premium')
->price(10)
->trialDays(14)
->features([
'Online profile', 'Access To More Features',
]);
我考虑过使用Laravel的翻译工具和翻译键来做类似的事情
Spark::plan('Premium', 'monthly-premium')
->price(10)
->trialDays(14)
->features([
'base.Online_profile', 'base.Access_to_more_features',
]);
然后在使用Vue渲染平面图时,我会做类似的事情,但它不会翻译。
<li class='pricing-feature' v-for="feature in plan.features">
@lang('@{{ feature }}')
</li>
有什么主意,我该如何实现以处理多种语言?
答案 0 :(得分:0)
这不是最好的解决方案,但这是我最终要做的事情:
Spark::freePlan('Basic')
->features([
'free_plan'
]);
然后在register-common.blade.php
中显示计划时
我对每个不同计划的v-if条件做了类似的事情
<ul v-if="plan.features[0] === 'free_plan'" class='pricing-feature-list'>
<li class="pricing-feature">
@lang('base.Online_profile')
</li>
</ul>
答案 1 :(得分:0)
在Laravel星火7.0,我已经设法通过向功能列表翻译:
.json
文件中。SparkServiceProvider::booted()
方法中,将这些键用于功能列表。在resources/views/vendor/spark/modals/plan-details.blade.php
和spark/resources/views/modals/plan-details.blade.php
上
<!-- Modal Body -->
<div class="modal-body">
<ul class="plan-feature-list p-0 m-0">
<li v-for="feature in detailingPlan.features">
@{{ feature }}
</li>
</ul>
</div>
更改为:
<!-- Modal Body -->
<div class="modal-body">
<ul class="plan-feature-list p-0 m-0">
<li v-for="feature in detailingPlan.features">
@{{ __(feature) }}
</li>
</ul>
</div>