loopback4入坑记录(一)-运行helloword+跑起官网todo教程
它是干嘛的(概念)”LoopBack是 屡获殊荣的,高度可扩展的,基于Express的开源Node.js和TypeScript框架。它使您能够快速创建由后端系统(例如数据库和SOAP或REST服务)组成的API和微服务。“-------------------------------来自经过谷歌翻译的官网原文官网-框架概念常用关键构建块目前经历的都是在命令行里敲的官网-关键构建块概念正文1-hel
它是干嘛的(概念)
”LoopBack是 屡获殊荣的,高度可扩展的,基于Express的开源Node.js和TypeScript框架。它使您能够快速创建由后端系统(例如数据库和SOAP或REST服务)组成的API和微服务。“
-------------------------------来自经过谷歌翻译的官网原文
常用关键构建块
目前经历的都是在命令行里敲的
正文1-helloword
1. 安装LoopBack 4 CLI
npm i -g @loopback/cli
2. 创建一个新项目
lb4 appnew
感觉除了项目名称外,可以一路回车了。
3. 进入项目并运行
cd appnew
npm start
4. 浏览器访问地址
http://127.0.0.1:3000/ping
正文2-跑起官网todo教程
还是基于上文中已经创建好的helloword项目
1. 建立todo 模型 (model)
lb4 model
相关的属性名称,属性类型选项,具体可以看图,也可以看官网的步骤。
2. 添加数据源 (datasource)
lb4 datasource
因为使用了本地数据文件,所以需要在项目根目录下创建 /data/db.json文件
db.json文件内容
{
"ids": {
"Todo": 5
},
"models": {
"Todo": {
"1": "{\"title\":\"Take over the galaxy\",\"desc\":\"MWAHAHAHAHAHAHAHAHAHAHAHAHAMWAHAHAHAHAHAHAHAHAHAHAHAHA\",\"id\":1}",
"2": "{\"title\":\"destroy alderaan\",\"desc\":\"Make sure there are no survivors left!\",\"id\":2}",
"3": "{\"title\":\"play space invaders\",\"desc\":\"Become the very best!\",\"id\":3}",
"4": "{\"title\":\"crush rebel scum\",\"desc\":\"Every.Last.One.\",\"id\":4}"
}
}
}
3. 添加存储库 (repository)
lb4 repository
4. 添加控制器 (controller)
lb4 controller
5. 运行并查看
(感慨)这种靠命令生成的文件,确实让bug出现概率小很多。
npm start
访问 http://localhost:3000/
6. 测试效果
点击 explorer 然后测试是否正常
结果
文件中第一条也是这个
其他请求方式就不11尝试了。
总结
1. lb4框架,目前觉得它没有热重载机制。(代码改动,并不能事实更新,需要停止运行重新 npm start
)
2. 用到的关键构建块
1. model:
用来定义数据模型,模型中字段的名称、数据类型等。
2. datasource:
主要配置外部数据的连接信息,(如果mysql 之类的话还要配置 host ,port,username,password 之类的)
3. repository:
官网解释 ”一种服务类型,表示数据源内的数据集合。“
查看源码后,我对他的理解,是用来执行crud的一个实例对象
底层源码
其实在控制器里也可佐证,控制器通过路由地址,调用todoRepository实例的不同方法。
4. controller:
官网:”实现由应用程序的REST API定义的操作的类。它实现了应用程序的业务逻辑,并充当HTTP / REST API和域/数据库模型之间的桥梁。控制器仅对后端服务/数据库的处理后输入和抽象进行操作。“
我的理解:对不同的请求地址,执行相应的方法(处理数据并返回数据)
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)