如何在magento 2中加载外部CDN(seat.io)?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在magento 2中加载外部CDN(seat.io)?相关的知识,希望对你有一定的参考价值。

我正在尝试在magento 2中实现https://docs.seats.io/docs/tutorial-show-the-floor-plan-on-your-page

我在我的主页上添加了这段代码

<div id="chart"></div>
<script>
        require(['jquery', 'seatsio'], function($){
            $(document).ready(function(){
                new seatsio.SeatingChart({
                    divId: 'chart',
                    publicKey: 'xxxx',
                    event: 'xxxx'
                }).render();
            });
        });
</script>

在requirejs-config.js中,我将其添加到加载cdn:

paths: {
    'seatsio': 'https://cdn.seatsio.net/chart'

shim: {seatsio: ['jquery']}

在谷歌chrome devtools中加载了CDN,但我有这个错误:

未捕获的ReferenceError:未定义seatio

你知道我做错了吗?

答案

根据chart.js代码,当通过requireJS加载库时,不设置全局变量seatsio,并且require.amd是一个对象。

RequireJS将每个依赖项的导出值提供给模块函数。您可以接受导出的seatsio作为第二个参数,如下面的代码所示。

<div id="chart"></div>
<script>
        require(['jquery', 'seatsio'], function($, seatsio /* add this param */){
            $(document).ready(function(){
                new seatsio.SeatingChart({
                    divId: 'chart',
                    publicKey: 'xxxx',
                    event: 'xxxx'
                }).render();
            });
        });
</script>

以上是关于如何在magento 2中加载外部CDN(seat.io)?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 php-url 路径在 Magento CMS 页面中加载图像背景?

在 SharePoint WebPart 中加载外部库

在 Magento 中加载日志访问者集合时收到“查询为空”错误

从类别中加载所有产品并按 Magento 中选定的多选属性进行过滤

如何在magento 2中排除css以单独从主页加载?

在 sencha touch 2 中加载外部 url