jquery - 在 Brunch 2.8 中加载 JQuery 插件

标签 jquery typescript npm brunch

我使用 Brunch 2.8.2 设置了一个 Brunch 项目。此版本的 Brunch 通过 NPM 与前端依赖项配合使用效果很好。我也在使用 Typescript Brunch 插件,并且可以在我的代码中执行 import $ = require("jquery") 就好了。

但是...我不知道如何加载 JQuery 插件以便我可以在我的代码中使用它。

简单地将它添加到 package.json 并不会使其显示在我编译的 vendor.js 中 - 这是预期的,因为我不需要它在任何地方。

我不会用

npm: {
  globals: {
    "$": "jquery-validation"
  }
}

上面的代码可以很好地使 JQuery 本身成为全局的,但大概是因为 jquery-validation 仅将自身附加到 JQuery,并且本身不返回任何内容,因此它不会通过此加载。

我不能在我的 Typescript 代码中 require("jquery-validation"),因为该插件的 .d.ts(正确地)将其描述为附加到 JQuery 本身并且不导出它自己的模块。

有什么方法可以做我想做的事吗?

最佳答案

除了将 JQuery 公开为全局变量外,我还需要通过将以下内容添加到我的 brunch-config.js 来强制将 JQuery 验证插件包含在我的 vendor.js:

npm: {
  globals: {
    "jQuery": "jquery"
  },
  static: [
    "node_modules/jquery-validation/dist/jquery.validate.js"
  ]
}

我不得不稍微更改全局部分,因为插件希望看到全局 jQuery 变量而不是 $

请参阅 NPM section 上的 Brunch 文档了解更多信息。

关于jquery - 在 Brunch 2.8 中加载 JQuery 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39298035/

相关文章:

jquery - Parent(),更快的选择?

node.js - NPM 无法在 Windows 上安装 "truffle"

javascript - 设置 npm 模块配置的最佳方法?

angular - 在 Angular 4 中使用 ngx-restangular 在 Http 请求中添加自定义 header

npm - yarn 不会使用指定的注册表

javascript - Jquery mousedown/mouseup 防止点击

jquery - 切换内容,动画其内容

javascript - 如何检查 Javascript Promise 是否已经实现?

typescript - 如何限制泛型类型具有 new()?

typescript - 是否可以拆分通用类型?