我有一个js文件,其中append
/ remove
导航栏中的导航栏项目取决于屏幕的大小。我遇到的一个问题是当我使用这个href="{{URL::to('/product1')}}"
时这很好用,而控制台显示为href="http://localhost/devFairtex/public/product1"
。但是当我在javascript文件中做同样的事情时就像这样
var aboutUsLink = "{{URL::to('/aboutUs')}}";
$('.navbar-nav').append('<li id="aboutUsRemoveList" class="nav-item"> <a class="nav-link" href='+aboutUsLink+'><span>About Us</span></a> </li>');
在控制台中显示为实际文本,它不会更改为显示为href="{{URL::to('/aboutUs')}}"
的实际链接
我不明白这个问题。我怎样才能克服这个问题?
答案 0 :(得分:1)
当您从公共目录访问JS文件时,它不会被刀片模板引擎解析,因此会保留您的刀片代码{{}}
。
解决这个问题的方法是
在您的视图(刀片文件)中编写此代码:
<script type="text/javascript">
window.aboutUsLink = "{{URL::to('/aboutUs')}}";
</script>
并在您的javascript文件中添加以下代码:
$(document).ready(function(){
$('.navbar-nav').append('<li id="aboutUsRemoveList" class="nav-item"> <a class="nav-link" href='+window.aboutUsLink+'><span>About Us</span></a> </li>');
});