有翻译文件的Laravel 5.8。我需要从翻译文件中调用Javascript函数。我最初的做法是这样称呼它:
'mentioned you in a <a href="javascript:postinfo(:post);">comment</a>'这是我的刀片文件的调用:
{!! __('notifications.mentionTimelinePost', ['post' => $mention->data['post']]) !!}我实际上需要它在翻译文件内,因为措辞和位置在不同的语言。我知道Laravel对Blade文件中的变量使用了:value语法,这就是为什么javascript:postinfo不能工作的原因。我试着逃避,但没有成功。
我怎么能让这件事成功呢?这些文件不包括这样的案件。
上面的链接就是这样呈现的:

更新:我意识到我只需要重命名给翻译文件的变量(或者可以重命名函数名)。._。案子结了。
这工作得很好:{!! __('notifications.mentionTimelinePost', ['postid' => $mention->data['post']]) !!}
发布于 2019-10-01 07:34:49
我通常把html标签和翻译的内容分开。
{{ __('notifications.mentionTimelinePost'}}<a href="javascript:postinfo(:post);">{{$mention->data['post']}}</a>如果您通常使用它,只需创建视图组件。你想叫什么就叫什么(mention.blade.php)。
<span> {{ __('notifications.mentionTimelinePost'}}<a href="javascript:postinfo(:post);">{{$post}}</a> </span>
然后在你的刀片文件中加入。
@include('mention.blade.php', ['post' => $post])如果我用:
<a href="javascript:doSomething()">Click me</a>剧本:
function doSomething() {alert("hello")}它在刀片中工作,没有任何问题。
https://stackoverflow.com/questions/58179918
复制相似问题