【问题标题】:Is it possible to arrange Java Script files in to 'name spaces' to avoid conflicts?是否可以将 Javascript 文件安排到“命名空间”中以避免冲突?
【发布时间】:2019-07-30 22:50:23
【问题描述】:

我正在使用高级 html 模板构建网站,部分模板使用 Javascript。所以在模板中我有这样的东西 - 它在每个页面的“主模板”中。

//Template JS
<script src="/js/core.min.js"></script>
<script src="/js/script.js"></script>

此外,作为本网站的一部分,我正在使用电子商务插件,这些文件也需要在页面上,因此如下所示:

//Plgin JS

    <script src="~/Scripts/jquery-1.10.2.min.js"></script>
        <script src="~/Scripts/jquery.validate.min.js"></script>
        <script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
        <script src="~/Scripts/jquery.validate.unobtrusive.min.js"></script>
        <script src="~/Scripts/underscore.min.js"></script>
        <script src="~/Scripts/bootstrap.min.js"></script>
 <script src="~/App_Plugins/Merchello/client/js/merchello.ui.min.js"></script>
        <script src="~/App_Plugins/Merchello/client/js/merchello.ui.settings.js"></script>
        <script src="~/App_Plugins/Merchello/client/js/fasttrack.js"></script>

问题是当它们都在页面上时 JS 冲突。有没有办法以一种他们只能看到该组中的内容的方式对 java 脚本文件进行分组......就像一个命名空间的概念?

还是我只需要全部取消?

【问题讨论】:

标签: javascript jquery namespaces javascript-namespaces


【解决方案1】:

在同一个html 页面中使用script 标签,因为浏览器只创建一个全局空间,该空间在所有脚本之间可见和共享。

您可以尝试使用一些模块捆绑器,例如 webpackrequirejs 等。 或者您可以使用iframe 在页内创建一个页面并将插件html 和脚本移动到iframe

【讨论】:

    猜你喜欢
    • 2013-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-01
    • 2011-07-01
    相关资源
    最近更新 更多