与 Aurelia 一起使用 jQuery
Using jQuery with Aurelia
我有一个 Aurelia 应用程序,在 app.js 我想使用 jQuery。
所以我的 config.js 看起来像:
System.config({
...
map: {
...
"jquery": "npm:jquery@2.2.0",
...
}
}
在 app.js 中,我像这样导入 jQuery:
var $ = require('jquery');
但是当我需要它时,我得到的是空白站点。与导入相同:
import $ from 'jquery';
怎么了?
谢谢
编辑:
好的,解决了。问题是,必须在 attached() 方法中调用 jQuery 代码。所以像这样:
export class Class1 {
attached() {
//jQuery code here
}
}
您需要从 https://github.com/components/jquery
安装 jquery
但是如果你使用aurelia-skeleton,你可以从bootstrap
导入它
import 'bootstrap';
然后在应用程序的任何地方使用$
,或者
import $ from 'bootstrap'
jqueryui也是如此。如果需要,请从 https://github.com/components/jqueryui
获取
jquery 安装在 \jspm_packages\github\components 中(至少在我的情况下)。如果是这种情况,您应该使用:
System.config({
...
map: {
...
"jquery": "github:components/jquery@2.2.0",
...
}
}
Link 到 Example in plunker.
只为与众不同!我们使用 jQuery 并且我尝试通过 config.js 添加它并使用导入等 - 工作正常。但是我们还使用了几个 js 库,我们在主 html 页面中使用脚本标记加载这些库,这些库需要 jquery。我也尝试使用 import 加载它们,但它们并不是真正为它设计的,而且它变得太复杂了,所以最后我们让生活变得非常简单:
主要 html 页面中 jquery 的脚本标记
主 html 页面
中来自第三方 js 库的脚本标记
大功告成!
如果您愿意,它还有一个潜在的好处,即能够从 CDN 加载 jquery 和库。
可能会失去通过导入加载模块的好处,但我们在整个应用程序中同时使用 jquery 和其他库,所以我们并没有真正失败,而且我不必记得在什么时候导入它们我创建了一个新模块:-)
npm 安装jquery --保存
并添加到 aurelia.json 中 vendor-bundle 的依赖项部分:
{
"name": "jquery",
"path": "../node_modules/jquery/dist",
"main": "jquery.min.js",
"exports": "$",
"map": "jquery.min.map"
}
然后您可以像往常一样在 jQuery 的代码中使用 $。
我有一个 Aurelia 应用程序,在 app.js 我想使用 jQuery。
所以我的 config.js 看起来像:
System.config({
...
map: {
...
"jquery": "npm:jquery@2.2.0",
...
}
}
在 app.js 中,我像这样导入 jQuery:
var $ = require('jquery');
但是当我需要它时,我得到的是空白站点。与导入相同:
import $ from 'jquery';
怎么了?
谢谢
编辑: 好的,解决了。问题是,必须在 attached() 方法中调用 jQuery 代码。所以像这样:
export class Class1 {
attached() {
//jQuery code here
}
}
您需要从 https://github.com/components/jquery
安装 jquery但是如果你使用aurelia-skeleton,你可以从bootstrap
import 'bootstrap';
然后在应用程序的任何地方使用$
,或者
import $ from 'bootstrap'
jqueryui也是如此。如果需要,请从 https://github.com/components/jqueryui
获取jquery 安装在 \jspm_packages\github\components 中(至少在我的情况下)。如果是这种情况,您应该使用:
System.config({
...
map: {
...
"jquery": "github:components/jquery@2.2.0",
...
}
}
Link 到 Example in plunker.
只为与众不同!我们使用 jQuery 并且我尝试通过 config.js 添加它并使用导入等 - 工作正常。但是我们还使用了几个 js 库,我们在主 html 页面中使用脚本标记加载这些库,这些库需要 jquery。我也尝试使用 import 加载它们,但它们并不是真正为它设计的,而且它变得太复杂了,所以最后我们让生活变得非常简单:
主要 html 页面中 jquery 的脚本标记
主 html 页面
大功告成!
如果您愿意,它还有一个潜在的好处,即能够从 CDN 加载 jquery 和库。
可能会失去通过导入加载模块的好处,但我们在整个应用程序中同时使用 jquery 和其他库,所以我们并没有真正失败,而且我不必记得在什么时候导入它们我创建了一个新模块:-)
npm 安装jquery --保存
并添加到 aurelia.json 中 vendor-bundle 的依赖项部分:
{
"name": "jquery",
"path": "../node_modules/jquery/dist",
"main": "jquery.min.js",
"exports": "$",
"map": "jquery.min.map"
}
然后您可以像往常一样在 jQuery 的代码中使用 $。