在将项目转移到它之前,我是浏览器并尝试理解它的新手。
我浏览了文档,并了解了如何使用它,我试图包含一些更多的依赖项,但在使用时,它们被声明没有定义!
以下是我的文件:
main.js
window.jQuery = $ = require("jquery");
require('bootstrap');
require("jquery-confirm");
require("html2canvas");
的package.json
{
"dependencies": {
"bootstrap": "^3.3.7",
"html2canvas": "^0.5.0-beta4",
"jquery": "^3.2.1",
"jquery-confirm": "^3.3.2",
"jshint": "^2.9.5",
"qrcodejs": "^1.0.0"
}
}
当我尝试通过浏览器控制台访问这些时,Html2canvas,jshint和qrcode都显示为未定义,但jquery-confirm似乎工作正常。
让我知道我错在哪里。
-Thanks
答案 0 :(得分:3)
那是因为您将它们作为模块加载。能够使用诸如Browserify之类的捆绑系统的全部意义在于,您不会 拥有全局变量。
如果你检查其中一个回复电话的返回值,你就会看到。
示例:
var html2canvas= require('html2canvas');
console.log(html2canvas);
如果您希望将它们设为全局(并且您应该提醒您不要这样做),那么您可以将它们附加到window
对象。
window.html2canvas = require('html2canvas');
但我完全想建议你除非必须,否则不要把事情做全球化。例如,您可以在开头使用jQuery在任何文件中使用:
var $ = require('jquery');