「B/S端开发」如何将DevExtreme组件添加到React应用程序? DevExtremeReactUI组件
一键设置
您可以使用作为DevExtreme CLI一部分的单个 npx 命令安装和配置DevExtreme及其依赖项:
npx -p devextreme-cli devextreme add devextreme-react
运行该命令后,您可以跳过以下文章,直接继续导入 DevExtreme UI 组件。
如果该命令因任何原因不可用或者您需要旧版本,请按照以下说明进行手动设置。
安装DevExtreme
安装devextreme和devextreme-react npm包:
npm install devextreme@21.1 devextreme-react@21.1 --save --save-exact
注意:我们建议保存DevExtreme的确切版本以避免意外更新,因为DevExtreme不使用语义版本控制。在我们的版本系统中,第一个和中间的数字表示可能包含操作更改的主要版本。
导入样式表
打开主应用程序文件 (App.js) 并导入预定义的主题样式表(下面代码中的 dx.light.css),或者您可以导入使用DevExtreme UI组件的样式表,语法是一样的。
App.js
// ... import 'devextreme/dist/css/dx.light.css';
然后转到public文件夹,打开index.html文件,并将dx-viewport类添加到 <body> 标记,这确保将主题颜色和排版设置应用于所有页面元素(而不仅仅是 DevExtreme UI 组件)。
index.html
<html lang="en"> <head> <!-- ... --> </head> <body class="dx-viewport"> <div id="root"></div> </body> </html>
注意:基于SVG的UI组件不需要主题样式表,如果您选择导入样式表,UI 组件将应用与其匹配的外观。
导入DevExtreme组件
从特定模块导入您要使用的DevExtreme组件,在以下代码中,导入了Button组件:
App.js
import React from 'react'; import 'devextreme/dist/css/dx.light.css'; import Button from 'devextreme-react/button'; class App extends React.Component { render() { return ( <Button text="Click me" onClick={this.sayHelloWorld} /> ); } sayHelloWorld() { alert('Hello world!') } } export default App;
还应导入嵌套的DevExtreme组件(以下代码中的 ArgumentAxis、Series 和 Legend):
App.js
import React from 'react'; import Chart, { ArgumentAxis, Series, Legend } from 'devextreme-react/chart'; const data = [{ arg: 1990, val: 5320816667 }, { arg: 2000, val: 6127700428 }, { arg: 2010, val: 6916183482 }]; class App extends React.Component { render() { return ( <Chart dataSource={data}> <ArgumentAxis tickInterval={10} /> <Series type="bar" /> <Legend visible={false} /> </Chart> ); } } export default App;
Webpack的额外配置
注意:如果您的应用程序中未使用Webpack,请跳过此步骤。
打开webpack.config.js文件并配置加载器来处理CSS和字体,如果要使用Globalize进行本地化,还应该指定Globalize和CLDR别名:
webpack.config.js
const path = require('path'); module.exports = { ... resolve: { alias: { globalize$: path.resolve( __dirname, "node_modules/globalize/dist/globalize.js" ), globalize: path.resolve(__dirname, "node_modules/globalize/dist/globalize"), cldr$: path.resolve(__dirname, "node_modules/cldrjs/dist/cldr.js"), cldr: path.resolve(__dirname, "node_modules/cldrjs/dist/cldr") }, ... }, module: { rules: [ ... { test: /\.css$/, use: [ { loader: "style-loader" }, { loader: "css-loader" }] }, { test: /\.(eot|svg|ttf|woff|woff2)$/, use: "url-loader?name=[name].[ext]" } ] } }
此外,打开package.json文件并确保在devDependencies中列出了style-loader、css-loader和url-loader。
运行应用程序
使用以下命令运行应用程序:
npm start
打开 http://localhost:3000 浏览应用程序。
DevExtreme拥有高性能的HTML5 / JavaScript小部件集合,使您可以利用现代Web开发堆栈(包括React,Angular,ASP.NET Core,jQuery,Knockout等)构建交互式的Web应用程序。从Angular和Reac,到ASP.NET Core或Vue,DevExtreme包含全面的高性能和响应式UI小部件集合,可在传统Web和下一代移动应用程序中使用。 该套件附带功能齐全的数据网格、交互式图表小部件、数据编辑器等。
DevExpress技术交流群5:742234706 欢迎一起进群讨论
上一篇: 限制上传文件类型为EXCEL?解决思路
下一篇: 什么是跨域?跨域解决方法
推荐阅读
-
「B/S端开发」如何将DevExtreme组件添加到React应用程序? DevExtremeReactUI组件
-
「B/S端开发」DevExtreme React组件及入门指南分享 DevExtremeReactJavaScriptHTML5
-
「B/S端开发」如何将DevExtreme组件添加到React应用程序? DevExtremeReactUI组件
-
「B/S端开发」如何使用DevExtreme搭建一个Angular组件 DevExtremeVisual StudioB/SAngular
-
「B/S端开发」如何将DevExtreme添加到ASP.NET Core Angular应用 ASP.NETASP.NET Core AngularDevExtreme
-
「B/S端开发」DevExtreme初级入门教程 - Vue篇入门指南 DevExtremeVueVue UI触控式 UI 组件
-
「B/S端开发」DevExtreme初级入门教程 - 添加到Vue应用程序 B/SDevExtremejavascriptvuevue.js
-
「B/S端开发」如何使用DevExtreme搭建一个Angular组件 DevExtremeVisual StudioB/SAngular
-
「B/S端开发」如何将DevExtreme添加到ASP.NET Core Angular应用 ASP.NETASP.NET Core AngularDevExtreme
-
「B/S端开发」DevExtreme初级入门教程 - 添加到Vue应用程序 B/SDevExtremejavascriptvuevue.js