我试图使用requirejs将我自己的js文件添加到orocommerce但是没有用

时间:2017-09-23 13:54:43

标签: javascript symfony requirejs orocrm orocommerce

我在myBundle / Resources / config / requirejs.yml文件中创建了以下选项:

config:
shim:
    'jquery-ui':
        deps:
            - 'jquery'
    'underscore':
        exports: '_'
    'backbone':
        deps:
            - 'underscore'
            - 'jquery'
        exports: 'Backbone'
paths:
    'jquery': '../js/layout/my_theme/js/jquery-3.2.1.min.js'
    'jquery-ui': 'bundles/oroui/lib/jquery-ui.js'
    'bootstrap': 'bundles/oroui/lib/bootstrap.js'
    '../js/layout/my_theme/js/scripts.js': '../js/layout/my_theme/js/scripts.js'

并运行此命令:php app / console oro:requirejs:build

和build命令在我的主题文件夹中创建oro.min.js,我在我的主题中包含了这个fild,但是我无法在oro.min.js文件中看到我的js函数。

我错过了什么?

1 个答案:

答案 0 :(得分:2)

首先,您使用的是什么版本的OroCommerce? 在1.3中,我们有整个应用程序的配置文件(admin + frontend),仅用于前端。

您更改位于“/Resources/config/requirejs.yml”中的配置文件 - 这是整个应用程序配置,它将内置到“web / js / oro.min.js”文件中,而不是在您的主题文件中。

前端配置存储在“/Resources/views/layouts/{your_theme}/config/requirejs.yml”中。此配置中的脚本将内置在主题中的“oro.min.js”中。

我问过你关于OroCommerce版本 - 在1.3中我们为每个主题生成“oro.min.js”,但我们不使用它。在admin和frontend上我们都使用/web/js/oro.min.js文件。

在1.4中,我们将使用admin的“/Resources/config/requirejs.yml”文件和前端主题的“/Resources/views/layouts/{your_theme}/config/requirejs.yml”。

因此,请将您的脚本检查到“web / js / oro.min.js”并更改配置路径

'{mybundle}/js/layout/my_theme/js/scripts.js': '/bundles/{mybundle}/js/layout/my_theme/js/scripts.js'

{{1}}

其中{mybundle}是您的包的公用文件夹(公司名称+包名称),您应该在“php app / console assetic:dump”命令之后的“/ web / bundles /”中看到此文件夹。