前几篇讲的大多都是想法与概念,都还没有讲到跟程序面有关的东西。接下来进入工程的世界了。
在聊到想法与构想的时候,可以非常天马行空,什麽样的问题跟什麽样的解决方案都有可能,有可能很棒也有可能很烂。不过不管怎麽样,有自己想过的问题才是自己的问题,都是很好的过程,最终的收获只有自己才会知道。
但是进入工程端的世界之後,就比较没有办法天马行空了,毕竟程序写错就是写错,没有任何一点模糊或是想像的空间。甚至可以说,在写side project的时候,会有一点先射箭再画靶的情形。因为自己会的技术有限,想法可实现与否,最大的一部分限制就在自己会多少。
因此,加强技术能力不一定会成功,但是加强技术能力可以加大自己的做梦空间。那麽就开始加大自己的做梦空间吧
monorepo是一种管理程序码的方法,可以将所有的应用程序、API还有共用的函示库都在同一个repo管理。在同一个专案管理的好处是,可以让各个module或interface独立出来,给不同的应用程序重复使用,而且不用再去管理从npm上面下载套件後的版本与相依的问题。可以大大减少管理的时间,专注在开发上面
Nx是一个建构monorepo的工具,他可以帮你建构与整合好整个monorepo的架构,让你可以一键建立好整个架构,除此之外,还整合了热门的测试工具,像是cypress、jest等等,以往要设定这些工具都还要繁复的设定步骤,现在完全零设定
建立的指令很简单,只要输入:
npx create-nx-workspace
接下来nx cli 就会问你要建立什麽样的专案,有各式各样的框架可以选择,像是Angular、React、express、nest等等
因为笔者熟悉的前端框架是Angular、後端框架是Nestjs,因此本系列文章会以这两个框架作为示范,但是大多数就是讲想法或概念而已,就算不懂也没关系,可以用自己熟悉的框架去做就好
然後就会问你一些设定的问题,就选择自己喜欢习惯的设定吧
完成之後,就可以打开vs code跑起来看看
分别启动终端机个别输入以下指令:
nx run api:serve // 启动 nestjs 後端
ng serve // 启动 angular 前端
可以看到一下画面:
打开 app.service.ts
,试着修改文字,看看是否有变化
import { Injectable } from '@nestjs/common';
import { Message } from '@hello-nx/api-interfaces';
@Injectable()
export class AppService {
getData(): Message {
return { message: 'Welcome to api!' }; // 试着修改文字
}
}
将文字修改为:
{ message: '欢迎来到2021年铁人赛' }
修改完之後储存,再打开画面
这样就成功建立Nx专案罗,明天开始介绍什麽是Nx
>>: D3 - 今天点个 String Methods 套餐
关键字引数(keyword arguments) 关键字引数(函式输入变数的前方使用「**」)会将函...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2...
-示例 XACML 实现 XACML 旨在支持授权,而不是身份验证。 XACML 代表“可扩展访问...
嗨我是稚鸟。这是一个for比菜鸟还菜的幼鸟前端指南。 幼鸟品种说明:学过一种程序语言,但对前端没啥概...
前面几天我们已经用 TDD 的方式完成了 <Editor /> 元件,但不要忘了 TDD...