Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 管理Typescript端到端应用程序中的通用模型_Javascript_Angularjs_Node.js_Mongodb_Typescript - Fatal编程技术网

Javascript 管理Typescript端到端应用程序中的通用模型

Javascript 管理Typescript端到端应用程序中的通用模型,javascript,angularjs,node.js,mongodb,typescript,Javascript,Angularjs,Node.js,Mongodb,Typescript,我们目前正在用Typescript编写一个应用程序。前端角度2,后端节点JS+MongoDb 因为很多时候,前端和后端使用相同的类,所以我们希望有一个通用的模型。从逻辑上讲,将实现具有类和接口的模块,并且前端和后端都依赖于此类模块 现在,如果说该模块描述了我们链接到MongoDB的数据模型,那么它本身就依赖于MongoDB(例如ObjectID)。现在,我们的前端(间接)依赖于MongoDB。这有点奇怪,不是吗 还有一个问题: 我们的后端使用require.js,前端(由于a2)使用system

我们目前正在用Typescript编写一个应用程序。前端角度2,后端节点JS+MongoDb

因为很多时候,前端和后端使用相同的类,所以我们希望有一个通用的模型。从逻辑上讲,将实现具有类和接口的模块,并且前端和后端都依赖于此类模块

现在,如果说该模块描述了我们链接到MongoDB的数据模型,那么它本身就依赖于MongoDB(例如ObjectID)。现在,我们的前端(间接)依赖于MongoDB。这有点奇怪,不是吗

还有一个问题: 我们的后端使用require.js,前端(由于a2)使用system.js。现在,如果在我的“model”项目中运行tsc-w,然后在package.json中添加对该模型的依赖,前端会得到“错误”的js文件,因为后端被编译为require.js而不是system.js

那么什么更好呢

具有两个独立的模型声明,一个用于前端,一个用于后端,具体取决于其需要-->代码复制


或者以某种方式弯曲工具链及其周围的一切,这样您就有了一个通用的代码库,但需要有某种方法来创建模型的两个编译版本,一个用于前端,一个用于后端,以及相应的模块系统等?

我认为这是一个更适合静态的问题,作为一个简短的回答,我会使模型只包含d.ts文件,并让其他产品实现或导入其中的接口。@toskv在引用其他网站时,指出@gnat I无法将其标记为移动到其他网站通常会有所帮助。:(@toskv这是我认为这是一个更适合的问题,作为一个简短的回答,我会让模型只包含d.ts文件,让其他产品实现或导入其中的接口。@toskv在引用其他网站时,指出@gnat我无法将其标记为移动到另一个网站通常是有帮助的.:(@toskv这是