javascript - 视图或模板文件中的 JavaScript 代码
问题描述
我有一个关于在任何 CMS 或框架视图/模板文件中编写小块 JavaScript 代码的问题。即,WordPress 模板文件或 Laravel 刀片文件
以 Laravel 的刀片文件为例。
我在view1.blade.php
&中写小 JS 块view2.blade.php
更具体地说,包装在 DOM 就绪事件侦听器中的 jQuery 代码:
jQuery(document).ready(function($) {
some_func($);
});
function some_func($) {
$('body').addClass('some-class');
}
我知道正确的方法应该是将所有 JS 代码添加到外部 JS 文件中。IE,scripts.js
但另一种方式对我来说更方便。
我的问题是它会影响网站性能吗?我没有看到这种情况发生,因为我在视图中的所有 JS 代码都包装在一个 DOM 就绪事件侦听器中。它也不会阻塞 DOM 渲染。谢谢
解决方案
添加@stack('scripts')
到您的通用模板。像主模板布局一样。
要将代码推入其中,请使用:
@push('scripts')
<script>Your code</script>
@endpush
另一种方法是@yield('script')
在通用模板中包含脚本并在单个刀片上添加代码:
@section('script')
<script>Your code</script>
@endsection
推荐阅读
- windows - 在入口点之前如何初始化全局变量?
- c# - mscorlib 在某些机器上产生奇怪的程序集引用
- javascript - 正则表达式提取模板标签 <%= 和 %>
- ansible - Ansible Playbook 目录结构 - 在 playbook_dir 级别使用 /files
- sql - 将具有父/子层次结构的表转换为在单独列中具有父名称的表?
- ionic-framework - 可空性说明符“非空”与现有说明符“可空”AppDelegate+FCMPlugin.m 冲突
- javascript - 我曾经使用 fetch 方法从 api 引号中获取引号,但没有找到结果
- amazon-web-services - 胶水表的隐式十进制数据类型模式转换问题
- npm - 未指定脚本时在“npm test”上执行什么?
- python - 如何按字符串的一部分对字符串列表进行排序