【问题标题】:jquery plugin in backbone + browserify主干+ browserify中的jquery插件
【发布时间】:2014-09-12 22:38:16
【问题描述】:

我正在从事的项目由 Backbone 和 browserify 组成。 我只使用过 jquery 和一些 javascript。

这是第一个使用 Backbone 和 browserify 框架的项目。 问题是每当尝试使用 jquery 插件时,某些东西不起作用。

我使用 jquery 插件的原因对我来说是可以理解的。

在 package.json 中

"browser": {
    "jquery": "./node_modules/jquery/dist/jquery.min.js",
    "bootstrap": "./src/javascript/vendor/bootstrap.min.js",
    "masonry": "./src/javascript/vendor/masonry.pkgd.min.js",
    "removeClassPrefix": "./src/javascript/vendor/jquery-removeClassPrefix.js",
    "jquery-validate": "./src/javascript/vendor/jquery.validate.min.js"
  },
  "browserify": {
    "transform": [
      "browserify-shim",
      "coffeeify",
      "hbsfy"
    ]
  },
  "browserify-shim": {
    "jquery": "$",
    "bootstrap": {
      "exports": "bootstrap",
      "depends": [
        "jquery:$"
      ]
    },
    "masonry": {
      "exports": "masonry",
      "depends": [
        "jquery"
      ]
    },
    "removeClassPrefix": {
      "exports": "removeClassPrefix",
      "depends": [
        "jquery:$"
      ]
    },
    "jquery-validate": {
      "exports": "jquery-validate",
      "depends": [
        "jquery:$"
      ]
    }
  },

以及用coffeescript编写的实际代码

_          = require 'underscore'
Backbone   = require 'backbone'
$ = require 'jquery'
Backbone.$ = $
Backbone.Marionette = require 'backbone.marionette'
ModalModel = require '../models/modalModel'
jquery-validate = require 'jquery-validate'

module.exports = Backbone.Marionette.ItemView.extend

构建代码后,上面代码的第一行出现错误。

Uncaught ReferenceError: jquery is not defined

下面没有代码一切正常。

jquery-validate = require 'jquery-validate'

这意味着在 jquery 插件(jquery-validate)中有些东西完全不起作用 我猜 jquery-validate 正在扩展 jquery 函数。

有什么办法可以解决这个问题吗?

【问题讨论】:

    标签: javascript jquery backbone.js coffeescript browserify


    【解决方案1】:

    您不能在有效的 JavaScript 变量标识符中使用破折号,因此请尝试将 jquery-validate = require 'jquery-validate' 更改为 jquery_validate = require 'jquery-validate'

    【讨论】:

    • 哦,非常感谢你,adamyonk。我想我开始习惯 Javascript。
    • 很高兴为您提供帮助!这绝对是一个具有挑战性的,但非常有用的工具。坚持下去!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-30
    • 2013-07-16
    • 1970-01-01
    • 1970-01-01
    • 2016-08-08
    相关资源
    最近更新 更多