DevExtreme 搭建Node.js开发环境
简介
DevExtreme is a component suite for creating highly responsive web applications for touch devices and traditional desktops.
创建Angular应用
$ ng new DevExtremeDemo --skip-install --skip-git
$ cnpm install

安装DevExtreme
$ cnpm install --save devextreme devextreme-angular

设置angular-cli.json 文件
"styles": [
"styles.scss",
"../node_modules/devextreme/dist/css/dx.common.css",
"../node_modules/devextreme/dist/css/dx.spa.css",
"../node_modules/devextreme/dist/css/dx.carmine.css"
],
参考源码
index.html
<!doctype html>
<html
lang="en">
<head>
<meta
charset="utf-8">
<title>DevExtremeDemo</title>
<base
href="/">
<meta
name="viewport"
content="width=device-width, initial-scale=1">
<link
rel="icon"
type="image/x-icon"
href="favicon.ico">
<link
rel="stylesheet"
type="text/css"
href="assets/css/dx.common.css" />
<link
rel="stylesheet"
type="text/css"
href="assets/css/dx.spa.css" />
<link
rel="stylesheet"
type="text/css"
href="assets/css/dx.carmine.css" />
</head>
<body
class="dx-viewport">
<app-root></app-root>
</body>
</html>
app.module.ts
import { BrowserModule } from
'@angular/platform-browser';
import { NgModule } from
'@angular/core';
import { DxButtonModule } from
'devextreme-angular';
import { AppComponent } from
'./app.component';
@NgModule({
declarations: [
AppComponent
],
imports: [
DxButtonModule,
BrowserModule
],
providers: [],
bootstrap: [AppComponent]
})
export
class AppModule { }
app.component.html
<!--The content below is only a placeholder and can be replaced.-->
<div
style="text-align:center">
<h1>
Welcome to DevExtreme!
</h1>
</div>
<dx-button
text="Press me" (onClick)="hello()"></dx-button>
<div
class="dx-fieldset">
<div
class="dx-field">
<div
class="dx-field-label">Normal</div>
<div
class="dx-field-value">
<dx-button [text]="okButtonOptions.text" [type]="okButtonOptions.type" (onClick)="okButtonOptions.onClick()"></dx-button>
</div>
</div>
<div
class="dx-field">
<div
class="dx-field-label">Success</div>
<div
class="dx-field-value">
<dx-button [text]="applyButtonOptions.text" [type]="applyButtonOptions.type" (onClick)="applyButtonOptions.onClick()"></dx-button>
</div>
</div>
<div
class="dx-field">
<div
class="dx-field-label">Default</div>
<div
class="dx-field-value">
<dx-button [text]="doneButtonOptions.text" [type]="doneButtonOptions.type" (onClick)="doneButtonOptions.onClick()"></dx-button>
</div>
</div>
<div
class="dx-field">
<div
class="dx-field-label">Danger</div>
<div
class="dx-field-value">
<dx-button [text]="deleteButtonOptions.text" [type]="deleteButtonOptions.type" (onClick)="deleteButtonOptions.onClick()"></dx-button>
</div>
</div>
<div
class="dx-field">
<div
class="dx-field-label">Back</div>
<div
class="dx-field-value">
<dx-button [type]="backButtonOptions.type" (onClick)="backButtonOptions.onClick()"></dx-button>
</div>
</div>
</div>
app.component.html
<!--The content below is only a placeholder and can be replaced.-->
<div
style="text-align:center">
<h1>
Welcome to DevExtreme!
</h1>
</div>
<dx-button
text="Press me" (onClick)="hello()"></dx-button>
<div
class="dx-fieldset">
<div
class="dx-field">
<div
class="dx-field-label">Normal</div>
<div
class="dx-field-value">
<dx-button [text]="okButtonOptions.text" [type]="okButtonOptions.type" (onClick)="okButtonOptions.onClick()"></dx-button>
</div>
</div>
<div
class="dx-field">
<div
class="dx-field-label">Success</div>
<div
class="dx-field-value">
<dx-button [text]="applyButtonOptions.text" [type]="applyButtonOptions.type" (onClick)="applyButtonOptions.onClick()"></dx-button>
</div>
</div>
<div
class="dx-field">
<div
class="dx-field-label">Default</div>
<div
class="dx-field-value">
<dx-button [text]="doneButtonOptions.text" [type]="doneButtonOptions.type" (onClick)="doneButtonOptions.onClick()"></dx-button>
</div>
</div>
<div
class="dx-field">
<div
class="dx-field-label">Danger</div>
<div
class="dx-field-value">
<dx-button [text]="deleteButtonOptions.text" [type]="deleteButtonOptions.type" (onClick)="deleteButtonOptions.onClick()"></dx-button>
</div>
</div>
<div
class="dx-field">
<div
class="dx-field-label">Back</div>
<div
class="dx-field-value">
<dx-button [type]="backButtonOptions.type" (onClick)="backButtonOptions.onClick()"></dx-button>
</div>
</div>
</div>
app.component.ts
import { Component } from
'@angular/core';
import notify from
'devextreme/ui/notify';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export
class AppComponent {
title = 'app';
okButtonOptions: any;
applyButtonOptions: any;
doneButtonOptions: any;
deleteButtonOptions: any;
backButtonOptions: any;
constructor(){
this.okButtonOptions = {
text: 'OK',
type: 'normal',
onClick: function (e) {
notify("The OK button was clicked");
}
};
this.applyButtonOptions = {
text: "Apply",
type: "success",
onClick: function (e) {
notify("The Apply button was clicked");
}
};
this.doneButtonOptions = {
text: "Done",
type: "default",
onClick: function (e) {
notify("The Done button was clicked");
}
};
this.deleteButtonOptions = {
text: "Delete",
type: "danger",
onClick: function (e) {
notify("The Delete button was clicked");
}
};
this.backButtonOptions = {
type: "back",
onClick: function (e) {
notify("The Back button was clicked");
}
};
}
hello() {
alert('Hello DevExtreme!');
}
}
运行
$ ng serve

浏览器中打开网址 http://localhost:4200/

参考资源
https://github.com/devexpress/DevExtreme-angular
DevExtreme 搭建Node.js开发环境的更多相关文章
- 快速搭建 Node.js 开发环境以及加速 npm
如何快速搭建 node 开发环境 npm 超慢 github 无法打开的问题 于是我觉得应该写一篇文章解答所有这些起步问题,让新同学也能顺顺利利入门. 快速搭建 Node.js 开发环境 如果你想长期 ...
- 【转】使用nvm快速搭建 Node.js 开发环境
原文链接:http://www.cnblogs.com/shuoer/p/7802891.html 快速搭建 Node.js 开发环境 如果你想长期做 node 开发, 或者想快速更新 node 版本 ...
- ES6 学习笔记 (2)-- Liunx环境安装Node.js 与 搭建 Node.js 开发环境
笔记参考来源:廖雪峰老师的javascript全栈教程 一.安装Node.js 目前Node.js的最新版本是6.2.x.首先,从Node.js官网下载对应平台的安装程序. 1.下载 选择对应的Liu ...
- 手把手教你学node之搭建node.js开发环境
搭建node.js开发环境 本文只针对在Linux或者Mac下面.至于使用 Windows 并坚持玩新技术的同学,我坚信他们一定有着过人的.甚至是不可告人的兼容性 bug 处理能力,所以这部分同学麻烦 ...
- 1.0搭建 Node.js 开发环境
<搭建 Node.js 开发环境> 本课程假设大家都是在 Linux 或者 Mac 下面.至于使用 Windows 并坚持玩新技术的同学,我坚信他们一定有着过人的.甚至是不可告人的兼容性 ...
- MongoDB 搭建Node.js开发环境
理解Mongoose Elegant MongoDB object modeling for Node.js 安装Mongoose $ cnpm install --save mongoose ...
- Oracle 搭建Node.js开发环境
先决条件 安装oralce客户端驱动. 安装node.js. 创建项目 安装oracledb模块 $npm install oracledb 如果失败了,你可能要爬墙. 参考package ...
- Linux虚拟机中 Node.js 开发环境搭建
Node.js 开发环境搭建: 1.下载CentOS镜像文件和VMWare虚拟机程序; 2.安装VMWare——>添加虚拟机——>选择CentOS镜像文件即可默认安装带有桌面的Linux虚 ...
- [转载]Sublime Text 3 搭建 React.js 开发环境
[转载]Sublime Text 3 搭建 React.js 开发环境 Sublime有很强的自定义功能,插件库很庞大,针对新语言插件更新很快,配合使用可以快速搭建适配语言的开发环境. 1. babe ...
随机推荐
- 抽象类(abstract class)和接口(Interface)的区别
前言 抽象类(abstract class)和接口(Interface)是Java语言中对于抽象类定义进行支持的两种机制,赋予了Java强大的面向对象能力. 二者具有很大的相似性,甚至可以相互替换,因 ...
- Android下创建一个输入法
输入法是一种可以让用户输入文字的控件.Android提供了一套可扩展的输入法框架,使得应用程序可以让用户选择各种类型的输入法,比如基于触屏的键盘输入或者基于语音.当安装了特定输入法之后,用户即可在系统 ...
- UESTC 趣味赛命题报告E
https://lutece.xyz/contest/detail/10/ 题目很简单,套路题: 求n个数中选k个数使得gcd最大: 很容易想到,我们只需要将因子分解出来然后计数即可: (只是这个id ...
- 安装 zookeeper
https://www.w3cschool.cn/zookeeper/zookeeper_cli.html ZooKeeper是一种分布式协调服务,用于管理大型主机.在分布式环境中协调和管理服务是一个 ...
- python内存相关问题
想要弄清楚内存相关的问题,就要理清楚:变量.内存地址.值之间的关系:1.程序里什么时候分配新的内存地址?答:1.定义一个变量,内存就开辟一个内存空间,分配一个内存地址. 特殊: 如:a=687 a=1 ...
- DRF教程7-token认证
Authentication 认证是将一个传入的请求和一组标识凭据相关联的机制,比如请求过来的用户,或者用户登录时携带的token. 然后权限策略就能使用这些凭据来决定是否允许这个请求. REST框架 ...
- poj3713 Transferring Sylla 枚举+tarjan判割点
其实就是判断是否为三连通图 三连通图指的是去掉3个点就不连通的图,但是并没有直接求三连通的算法.著名的Tarjan算法可以求解连通和割点,再枚举删除一个点就能达到三连通的目的. 先看用例2,是由用例1 ...
- Request库基本使用
基本实例 import requests url= 'https://www.baidu.com/' response = requests.get(url) print(type(response) ...
- 如何 将下载离线 nupkg 文件 安装到VS2017
https://www.cnblogs.com/cncc/articles/8276878.html --------------------------------------------- ...
- my13_mysql xtrabackup备份的时间点
备份原理 xtrabackup的备份时间点是备份结束时刻,记录在xtrabackup_binlog_info 文件中:如果后续需要通过binlog追加操作,则该时间点是起点. 备份开始后,xtrabc ...