按照建议在其页面https://www.npmjs.com/package/devextreme
中使用DevExtreme npmvar $ = require('jquery');
require('devextreme/ui/button');
var dialog = require('devextreme/ui/dialog');
$("#myButton").dxButton({
text: "Say hello",
onClick: function() {
dialog.alert('Hello world!', '', false);
}
});
HTML
<div id="myButton"></div>
<script type="text/javascript" src="bundle.js" charset="utf-8"></script>
导致浏览器错误:
未捕获的TypeError:$(...)。dxButton不是函数
检查浏览器控制台和jQuery和$是否正确初始化,但$(...)。dxButton不是。 我也逐步完成了DX button.js,它似乎也初始化了(但这是一个局部变量$)
BTW:这也是webpack配置:
{
"name": "devextreme-test",
"version": "1.0.0",
"description": "TBS",
"dependencies": {
"jquery": "^3.3.1",
"devextreme": "^17.2.6"
},
"devDependencies": {
"webpack": "^1.13.1"
},
"author": "anonymouse",
"license": "MIT"
}
答案 0 :(得分:0)
经过大量的搜索和调试后,我遇到了一个&#34;重大变化&#34;在发布网站上
BC4148 - 现在应手动导入jQuery集成模块 使用模块化方法时
这意味着您还必须在代码中添加以下内容以修复jQuery错误:
import 'devextreme/integration/jquery';
(太糟糕了,他们在他们的示例主要的npm页面中没有提到这一点。)