创建项目

选择empty,然后选择Angular CLI 因为可以使用Angular Console

λ npm init nx-workspace nx-demo

λ atree -d 1
|-- angular.json
|-- apps/ // 放置应用程序的地方 你可以在这里面放多个项目 ng, react, express, nest...
|-- libs/ // 放置应用程序之间共享代码的地方,可以放一些interface,组件,在多个程序之间公用
|-- nx.json
|-- package-lock.json
|-- package.json
|-- README.md
|-- tools/
|-- tsconfig.json
|-- .atree
|-- .editorconfig
|-- .gitignore
|-- .prettierignore
|-- .prettierrc

添加创建Angular应用程序的功能

ng add @nrwl/angular --defaults

添加一个angular应用程序

ng g @nrwl/angular:application todos

查看 /apps文件夹

已经被添加了进去 ng serve todos运行程序

λ atree ./apps/ -d 3
|-- todos/
| |-- browserslist
| |-- karma.conf.js
| |-- src/
| | |-- app/
| | |-- assets/
| | |-- environments/
| | |-- favicon.ico
| | |-- index.html
| | |-- main.ts
| | |-- polyfills.ts
| | |-- styles.styl
| | |-- test.ts
| |-- tsconfig.app.json
| |-- tsconfig.json
| |-- tsconfig.spec.json
| |-- tslint.json
|-- todos-e2e/
| |-- protractor.conf.js
| |-- src/
| | |-- app.e2e-spec.ts
| | |-- app.po.ts
| |-- tsconfig.e2e.json
| |-- tsconfig.json
|-- .gitkeep

使用 Angular Console

  1. 添加创建React应用程序的功能

  2. 创建React项目

如果使用命令行

λ ng add @nrwl/react
λ ng g @nrwl/react:application anime

现在有两个项目

λ atree -d 2
|-- apps/
| |-- anime/
| |-- anime-e2e/
| |-- todos/
| |-- todos-e2e/

可以选择你要启动的项目

创建一个后端项目

λ ng add @nrwl/nest
λ ng g @nrwl/nest:application api

创建共享代码

λ ng g @nrwl/workspace:lib data

libs\data\src\lib\data.ts

export interface Todo {
title: string;
}

使用

// 工具已经自动在paths里面注入@nx-demo/data
import { Todo } from '@nx-demo/data'; todos: Todo[] = [{ title: 'Todo 1' }, { title: 'Todo 2' }];

创建angular公共ui库

// 添加项目
λ ng g @nrwl/angular:lib ui // 添加组件
λ ng g component todos --project=ui --export

使用模块即可

import { UiModule } from "@nx-demo/ui";

@NgModule({
imports: [UiModule],
})
export class AppModule {}

查看依赖关系图

λ npm run dep-graph

配置代理

angular.json 设置client项目的代理配置文件路径

client.architect.serve.options.proxyConfig = 'apps/client/proxy.conf.json'

proxy.conf.json

{
"/api": {
"target": "http://localhost:3333",
"secure": false
}
}

当在客户端访问axios.get('/api')会被转发到http://localhost:3333/api

开始 nx的更多相关文章

  1. .PRT extension and multiple NX versions

    http://nxway.blogspot.ca/2007/10/prt-extension-and-multiple-nx-versions.html To open prt files with ...

  2. 安装 NoMachine(NX) client and server

    (1)Windows上直接安装nxclient-3.5.0-9.exe即可 (2)Linux上 准备linux rpms nxclient-3.5.0-7.x86_64.rpmnxnode-3.5.0 ...

  3. linux 远程桌面工具NX

    1.在linux服务器上需要安装3个文件,下载地址为: http://www.nomachine.com/download-package.php?Prod_Id=1977 nxclient-3.4. ...

  4. Linux_x86下NX与ASLR绕过技术

    本文介绍Linux_x86下NX与ASLR绕过技术,并对GCC的Stack Canaries保护技术进行原理分析. 本文使用存在漏洞代码如下: /* filename : sof.c */ #incl ...

  5. UG/NX 8.0安装方法(图文详解)

    UG8.0,自从被西门子收购后改名为NX,也称NX8.0,作为一款非常优秀三维模具设计软件.他可以针对用户的虚拟产品设计和工艺设计的需求,提供经过实践验证的解决方案.其以全面的设计概念.良好的界面受到 ...

  6. NX 栈不可执行的绕过方式--ROP链

    目标程序下载 提取码:5o0a 环境:Ubuntu linux 工具 pwn-gdb pwntools python库 ROPgadget ( 这些工具可以到github官网找) 1.检查程序开了哪些 ...

  7. 将NX模型导入Process Designer的方法

    如何把一个有焊点的零件从nx中输入到process designer 中?   用户在NX中做了一个prt文件, 想把它输入到process designer中, 并且包括焊点信息, 该如何做? 解决 ...

  8. [Angular] Improve Server Communication in Ngrx Effects with NX Data Persistence in Angular

    Communicating with a remote server via HTTP presents an extra level of complexity as there is an inc ...

  9. 【转】linux 远程桌面工具NX

    1.在linux服务器上需要安装3个文件,下载地址为: http://www.nomachine.com/download-package.php?Prod_Id=1977 nxclient-3.4. ...

  10. SET key value [EX seconds] [PX milliseconds] [NX|XX]

    SET key value [EX seconds] [PX milliseconds] [NX|XX] 可用版本: >= 1.0.0 时间复杂度: O(1) 将字符串值 value 关联到 k ...

随机推荐

  1. loj 10127最大数

    JSOI 2008 最大数 给定一个正整数数列a1​,a2​,a3​,⋯,an​,每一个数都在0∼p–1 之间.可以对这列数进行两种操作: 添加操作:向序列后添加一个数,序列长度变成 n+1: 询问操 ...

  2. hive-2.2.0 伪分布式环境搭建

    一,实验环境: 1, ubuntu server 16.04 2, jdk,1.8 3, hadoop 2.7.4 伪分布式环境或者集群模式 4, apache-hive-2.2.0-bin.tar. ...

  3. 获取 *.properties配置文件内容

    package com.loan.modules.common.util; import java.util.ResourceBundle; /** * 获取 *.properties配置文件内容 * ...

  4. java 生成xml

    生成xml @Test public void parseApplicationConfigXML(){ try { SAXReader sax = new SAXReader(); Document ...

  5. (31)sed命令完全攻略

    1.sed简介 Vim 采用的是交互式文本编辑模式,你可以用键盘命令来交互性地插入.删除或替换数据中的文本.但本节要讲的 sed 命令不同,它采用的是流编辑模式,最明显的特点是,在 sed 处理数据之 ...

  6. Java|ArrayList源码分析|add()增加方法和grow()扩容方法

    本文结构: 1.介绍特点 2.基本方法 3.重点源码分析 1.介绍特点 ArrayList: 是List的一个具体实现子类,是List接口的一个数组实现 (里面必定维护了一个数组). 默认初始容量10 ...

  7. Centos根目录100%解决思路

    Centos 7 根目录(爆满)100%解决思路,下面以宝塔面板环境为例 1.首先远程到服务器,在~下输入df -h ,看下根目录下文件夹使用情况 [root@localhost~]# df -h F ...

  8. Eclipse配置MySQL连接工具

    1.项目名称右键新建文件夹lib 2.用鼠标将mysql-connector-java-5.1.15-bin.jar移动到lib文件夹中 3.选择Copy files点击OK 4.右键移动过来的mys ...

  9. hdu 2072 单词数(字符串)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2072 题意 每行输入由小写字母和空格组成,统计每行中不同的单词数. 题解 题解一 比较简洁的解法,读入 ...

  10. 2015 German Collegiate Programming Contest (GCPC 15) + POI 10-T3(12/13)

    $$2015\ German\ Collegiate\ Programming\ Contest\ (GCPC 15) + POI 10-T3$$ \(A.\ Journey\ to\ Greece\ ...