基于当前页面启用JavaScript

时间:2015-05-18 20:15:21

标签: javascript laravel

我正在使用Laravel'刀片模板引擎,并在@section('脚本')中编写我的页面特定代码,并将其放在主模板上。

问题在于,代码是内联的,我无法像使用全局js代码和库那样缩小/连接此代码。

是否有办法为应用程序包含所有JS,并且只根据页面/路径运行特定部分(如果需要,我可以在视图中设置变量)。

这将允许我有一个缓存的JS文件。

因此,在全局范围内设置路径变量,然后执行此操作,这是唯一的解决方案:

if(route == 'home') {
    // js specific to homepage
}

if(route == 'login') {
    // js specific to login
}

2 个答案:

答案 0 :(得分:0)

我建议选择其中一个,

  1. 根据服务器端的技术用途 - 您应该能够创建一个JS端点,根据您建议的条件发送JS(路由作为路径信息传递给端点。)(参见本节第2点)回答(基于Java作为服务器端技术 - https://softwareengineering.stackexchange.com/a/283676/173234

  2. 使用AJAX下载所需的JS文件 - 像AngularJS甚至Dojo这样的框架可以为您提供开箱即用的功能。

答案 1 :(得分:0)

查看Paul Irish的DOM-Based Routing。我首先在Sage中学习了这种技术,这是一个WordPress入门主题,它使用body类来路由函数。在您的情况下,您可以在视图中使用变量设置body类,然后使用它来执行您喜欢使用他的技术的任何函数。