Aurelia 如何在CLI项目中包含jquery插件?

Aurelia 如何在CLI项目中包含jquery插件?,aurelia,Aurelia,因此,到目前为止,我用于向使用CLI创建的项目添加依赖项的现有流程如下: 1) npm安装 2) 打开aurelia.json并尝试添加包的名称,例如: "dependencies": [ ... "jquery.scrollTo", 这在很多时候都有效。如果这不起作用,我会尝试更详细的方法,如: { "name": "jquery.scrollto", "path": "../node_modules/jquery.scrollto", "main": "jque

因此,到目前为止,我用于向使用CLI创建的项目添加依赖项的现有流程如下:

1) npm安装

2) 打开aurelia.json并尝试添加包的名称,例如:

"dependencies": [
...
"jquery.scrollTo",
这在很多时候都有效。如果这不起作用,我会尝试更详细的方法,如:

  {
    "name": "jquery.scrollto",
    "path": "../node_modules/jquery.scrollto",
    "main": "jquery.scrollTo",
    "deps": [
      "jquery"
    ]
  }
上述两种方法中的一种通常有效,但还有一些需要预先准备。像这样:

"prepend": [
  "node_modules/jquery.scrollto/jquery.scrollTo.js"
我正在尝试为jquery安装一个插件“jquery.scrollTo”,但是上面的方法都不起作用。因此,我想得到更好的理解

prepending表示jquery没有加载,其他方法似乎没有扩展jquery,并且在“运行时”失败

我也尝试过各种导入,但我更希望它是全球性的,而不导入,即使它确实有效

import { scrollTo } from 'jquery.scrollto';

export class Menu
{
    constructor(){

    }

    scrollToPage(elementId:string)
    {
        debugger;
        $("body").scrollTo($(elementId)); //scrollTo not found
    }
}

您应该在jQuery和ScrollTo前面加上前缀。像这样:

"prepend": [
  "node_modules/jquery/dist/jquery.js",
  "node_modules/jquery.scrollto/jquery.scrollTo.js"
]

现在您可以使用
scrollTo
,而无需导入它。

您应该同时添加jQuery和scrollTo。像这样:

"prepend": [
  "node_modules/jquery/dist/jquery.js",
  "node_modules/jquery.scrollto/jquery.scrollTo.js"
]

现在您可以使用
scrollTo
,而无需导入它。

是的,这确实是首选方法。并不是所有的东西都可以作为一个模块来使用,prepend选项真的可以帮助处理这个非常简单的只针对JavaScript的东西。这就是我最终让它工作的方法,但出于某种原因,我认为这不是推荐的方法。不用担心,我很乐意这样做。是的,这确实是首选的方式。并不是所有的东西都可以作为一个模块来使用,prepend选项真的可以帮助处理这个非常简单的只针对JavaScript的东西。这就是我最终让它工作的方法,但出于某种原因,我认为这不是推荐的方法。不用担心,我很乐意这样做。