如何在Magento 2中使用jquery库?


26

我正在创建一个需要包含jQuery的Magento主题。

当我添加<link src="js/jquery-1.7.1.js"/>head。它正在运行,但是Magento javascript函数不起作用。如何在自定义主题上使用内置在jQuery库中的Magento 2?


jQuery已添加到m2。如果您需要在自定义phtml文件中使用jquery,则可以通过require.js使用它
-Shaheer Ali

是的,我知道我想在自定义主题中使用。我有依赖于jquery库的文件。
Qaisar Satti

1
使用require(['jquery','jquery / ui'],function($){}
Shaheer Ali

您可以使用<script src =“ [Vendor_Ext] :: js / custom.js” />添加外部js
Shaheer Ali

从什么时候开始您通过link标记包含js ???您必须使用脚本标签
Black

Answers:


52

如果要添加除jQuery之外的自定义js库,则需要在require函数中包括js代码,例如:

 require(['jquery', 'jquery/ui'], function($){ 
     //your js code here  
 });

例子:

在require函数内部,您可以使用jQuery其简短形式的别名美元$符号直接访问jQuery功能。例如:

require(['jquery', 'jquery/ui'], function($){
  jQuery(document).ready( function() {
    alert("Page loaded.");
  });
});

这是$别名的示例:

require(['jquery', 'jquery/ui'], function($){
  $(document).ready( function() {
    alert("Page loaded.");
  });
});

是否可以包含prototype.js?
Slimshadddyyy

@Vikram,是的,只需在传递给require()函数的数组中添加'prototype'元素。
罗曼(Roman Glushko)

4

jQuery / JqueryUI已在magento2中添加。您可以在lib / web / jquery中看到

要使用jquery或调用magento的小部件。从你的js文件

define([
  'jquery',
  'jquery/ui',
  'mage/<widget.name>' found in /lib/web/mage dir
], function($){

$.widget('<your_namespace>.<your_widget_name>', $.mage.<widget.name>, {  CODE HERE... });

return $.<your_namespace>.<your_widget_name>;

});

3
我试过了,它不起作用,可以根据主题放置一些东西吗?
Qaisar Satti
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.