我正在使用Laravel'刀片模板引擎,并在@section('脚本')中编写我的页面特定代码,并将其放在主模板上。
问题在于,代码是内联的,我无法像使用全局js代码和库那样缩小/连接此代码。
是否有办法为应用程序包含所有JS,并且只根据页面/路径运行特定部分(如果需要,我可以在视图中设置变量)。
这将允许我有一个缓存的JS文件。
因此,在全局范围内设置路径变量,然后执行此操作,这是唯一的解决方案:
if(route == 'home') {
// js specific to homepage
}
if(route == 'login') {
// js specific to login
}
答案 0 :(得分:0)
我建议选择其中一个,
根据服务器端的技术用途 - 您应该能够创建一个JS端点,根据您建议的条件发送JS(路由作为路径信息传递给端点。)(参见本节第2点)回答(基于Java作为服务器端技术 - https://softwareengineering.stackexchange.com/a/283676/173234)
使用AJAX下载所需的JS文件 - 像AngularJS甚至Dojo这样的框架可以为您提供开箱即用的功能。
答案 1 :(得分:0)
查看Paul Irish的DOM-Based Routing。我首先在Sage中学习了这种技术,这是一个WordPress入门主题,它使用body
类来路由函数。在您的情况下,您可以在视图中使用变量设置body类,然后使用它来执行您喜欢使用他的技术的任何函数。