我如何在脚本中定义函数?

时间:2019-02-01 18:43:25

标签: javascript laravel vue.js localization

我正在app.js中使用一个函数来转换Vue组件并获取Laravel lang文件Vue.prototype.trans = local => _.get(window.i18n, local) 此功能在我的HTML模板中可用,而在我的脚本中不起作用。

return '<span class="label label-danger">' + trans('attendance.Absent') + '</span>';

在脚本Uncaught ReferenceError: trans is not defined中使用此功能时出现此错误

并且当我使用Vue Router软件包时此功能不起作用。

这种获取所有fils lang的方法,以将其导入lang.js

Route::get('/js/lang.js', function () {
    $strings = Cache::remember('lang.js', 0.01, function () {
        $lang = Auth::user()->settings;
        $files   = glob(resource_path('lang/' . $lang['locale'] . '/*.php'));
        $strings = [];

        foreach ($files as $file) {
            $name           = basename($file, '.php');
            $strings[$name] = require $file;
        }

        return $strings;
    });

    header('Content-Type: text/javascript');
    echo('window.i18n = ' . json_encode($strings) . ';');
    exit();
})->name('assets.lang');

0 个答案:

没有答案