如何使用 Typescript 而不是 Javascript 在解析服务器中编写云代码?

     2023-03-16     53

关键词:

【中文标题】如何使用 Typescript 而不是 Javascript 在解析服务器中编写云代码?【英文标题】:How do I use Typescript instead of Javascript for writing cloud code in parse-server? 【发布时间】:2020-07-10 06:36:43 【问题描述】:

我正在使用前端的 Angular 10 和后端的 Parse-Server 编写一个 Web 应用程序。

我想使用 Typescript 而不是 Javascript 来编写我所有的云代码功能和作业,但我有点不确定如何设置它,在 Angular 中,一切都是“原生”Typescript,所以不需要在那里设置。

关于如何使用 Parse 设置 Typescript 的信息很少。我只找到了这篇不完整的中篇文章:https://medium.com/@avifatal/using-parseplatform-cloud-code-with-typescript-d27ded2e5054

如何设置 Typescript 而不是 Javascript 以在 parse-server 中编写云代码?

【问题讨论】:

您发现缺少信息的原因是 TypeScript 旨在在 JavaScript 工作的任何环境中工作,您只需要编译它。 Angular 在这里是一个异常值。 【参考方案1】:

我不熟悉 Angular,但我用 TypeScript 编写了许多项目,它们同时使用 Parse Server 和 Parse SDK for JavaScript。

Parse Server 本身没有任何类型定义,因此为了在您的项目中使用它,您必须确保在项目文件夹 (index.d.ts) 的某处创建类型定义文件并将模块声明为解析服务器,如下所示:

declare module 'parse-server'

但在这种情况下不要指望智能代码完成。

但是,如果您使用的是Parse SDK for JS,那么一切都会变得容易得多,因为您只需在您的package.json 中导入包@types/parse(连同parse 包),一切都应该开箱即用在你的 TypeScript 代码中。

如果您需要示例,我在 Parse Server 中使用云代码,您可以在此 repo 中找到。查看文件夹src/cloud.ts

【讨论】:

【参考方案2】:

根据我与客户在 SashiDo 上使用 Typescript 的经验,我可以告诉您的是,由于 Typescript 是编译为 JavaScript 的 JavaScript 的超集,因此您绝对可以在 Cloud Code 中使用它。您需要提供已编译的 JavaScript 文件以作为常规 JS 文件加载到云代码中。

您不需要 Parse JS SDK,因为它作为全局变量公开,以便您更轻松地使用和初始化它。

请注意,这仅适用于解析服务器版本 2.8.4 及更高版本。

您也可以将构建放在 postinstall 上,您的代码需要放在云目录中,并且您需要在其中有一个 main.js。这样您就可以将 .ts 文件存储在 repo 中并忽略 js 文件。

以下是安装后的示例: “安装后”:“npm 运行构建”

【讨论】:

如何使用 Typescript 而不是 Javascript 在解析服务器中编写云代码?

】如何使用Typescript而不是Javascript在解析服务器中编写云代码?【英文标题】:HowdoIuseTypescriptinsteadofJavascriptforwritingcloudcodeinparse-server?【发布时间】:2020-07-1006:36:43【问题描述】:我正在使用前端的Angular10和后端的Parse-Server编写... 查看详情

如何使用 usestate 和 setstate 而不是 this.setState 使用 react 和 typescript?

】如何使用usestate和setstate而不是this.setState使用react和typescript?【英文标题】:Howtouseusestateandsetstateinsteadofthis.setStateusingreactandtypescript?【发布时间】:2020-09-1618:38:06【问题描述】:我想使用react和typescript实现一个DragAndDrop组件,... 查看详情

如何使用typescript监听文件夹,而不是文件

参考技术A可以使用nodejsapi。比如使用chokidar去监听。可以监听文件夹文件glob数组,他有addchangeunlink等事件可以很轻易的实现你要的效果。 参考技术B可以使用nodejsapi。比如使用chokidar去监听。可以监听文件夹文件glob数组,他有add... 查看详情

如何从本地目录而不是全局目录运行 TypeScript

】如何从本地目录而不是全局目录运行TypeScript【英文标题】:HowtorunTypeScriptfromlocaldirectoryinsteadofglobal【发布时间】:2019-10-2704:25:04【问题描述】:所以我有多个项目,每个项目都使用diff类型的TypeScript,所以我从全局卸载并将它... 查看详情

如何在 .ts 而不是 .js 中显示 Typescript 运行时错误/异常

】如何在.ts而不是.js中显示Typescript运行时错误/异常【英文标题】:HowtodisplayTypescriptRuntimeerrors/exceptionsin.tsinsteadof.js【发布时间】:2019-11-1618:06:53【问题描述】:我是打字稿的新手。我使用来自谷歌(谷歌云功能)的无服务器解... 查看详情

如何在 Web 应用程序(ASP.NET Core)中使用 TypeScript 导入语句而不是 <reference path...>?

】如何在Web应用程序(ASP.NETCore)中使用TypeScript导入语句而不是<referencepath...>?【英文标题】:HowtouseTypeScriptimportstatementinsteadof<referencepath...>inaWebapplication(ASP.NETCore)?【发布时间】:2021-11-2109:02:13【问题描述】:上下文... 查看详情

如何使用 jquery 1.9.1 而不是 jquery 1.4

】如何使用jquery1.9.1而不是jquery1.4【英文标题】:Howtousejquery1.9.1insteadofjquery1.4【发布时间】:2013-09-0414:48:07【问题描述】:我使用的是rails3.2,默认jquery使用的是1.4,但我想使用默认jquery1.9.1,我该怎么做。我试过了<%=javascript_... 查看详情

如何从接口中省略一个属性,而不是 TypeScript 中的类型?

】如何从接口中省略一个属性,而不是TypeScript中的类型?【英文标题】:Howtoomitonepropertyfrominterface,butnotwithtypeinTypeScript?【发布时间】:2020-09-2122:35:51【问题描述】:我需要创建一个从2扩展的接口,但我收到错误:接口“IModalPro... 查看详情

在 TypeScript 中使用 JS React 组件:JSX 元素类型“MyComponent”不是 JSX 元素的构造函数

】在TypeScript中使用JSReact组件:JSX元素类型“MyComponent”不是JSX元素的构造函数【英文标题】:UsingJSReactcomponentinTypeScript:JSXelementtype\'MyComponent\'isnotaconstructorfunctionforJSXelements【发布时间】:2020-04-0917:46:57【问题描述】:我正在处... 查看详情

如何强制 VSCode 使用本地安装的 TypeScript

】如何强制VSCode使用本地安装的TypeScript【英文标题】:HowtoforceVSCodetouselocallyinstalledTypeScript【发布时间】:2019-07-1514:12:47【问题描述】:有没有办法强制VisualStudioCode在编辑该项目时使用本地安装在JS项目中的TypeScript(而不是与VS... 查看详情

使用 ionic 2 而不是 typescript 应用程序创建一个 javascript starter 应用程序

】使用ionic2而不是typescript应用程序创建一个javascriptstarter应用程序【英文标题】:Createajavascriptstarterappwithionic2ratherthanatypescriptapp【发布时间】:2016-10-2308:47:17【问题描述】:我正在尝试创建一个JS入门项目,但ionicstartxxx--v2创建... 查看详情

如何使用 bit 在 javascript 项目中创建 typescript 组件?

】如何使用bit在javascript项目中创建typescript组件?【英文标题】:HowdoIcreatetypescriptcomponentsinajavascriptprojectusingbit?【发布时间】:2020-04-1102:27:59【问题描述】:我想在现有的javascript项目中创建一些打字稿组件。我的新组件将全部... 查看详情

如何使用 TypeScript 在我的 Angular 2 组件中声明模型类?

】如何使用TypeScript在我的Angular2组件中声明模型类?【英文标题】:HowdoIdeclareamodelclassinmyAngular2componentusingTypeScript?【发布时间】:2016-11-1819:51:21【问题描述】:我是Angular2和TypeScript的新手,我正在努力遵循最佳实践。我尝试创... 查看详情

如何使用 Typescript 在 Vue 应用程序中使用 webcomponents

】如何使用Typescript在Vue应用程序中使用webcomponents【英文标题】:HowcanIusewebcomponentsinaVueapplicationusingTypescript【发布时间】:2020-07-1409:11:36【问题描述】:我正在尝试在我的Vue项目中使用Web组件。但是,它没有正确加载。我可以在... 查看详情

sequelize/sequelize-typescript - 带有 HasMany 的 findAll 返回一个对象而不是数组

】sequelize/sequelize-typescript-带有HasMany的findAll返回一个对象而不是数组【英文标题】:sequelize/sequelize-typescript-findAllwithHasManyreturnsanobjectinsteadofanarray【发布时间】:2020-10-0710:11:52【问题描述】:我正在尝试使用sequelize-typescript建立... 查看详情

转到 Typescript 源定义而不是 Visual Studio Code 中的编译定义

】转到Typescript源定义而不是VisualStudioCode中的编译定义【英文标题】:GotoTypescriptSourceDefinitioninsteadofCompiledDefinitioninVisualStudioCode【发布时间】:2020-01-0123:40:20【问题描述】:我正在使用VisualStudioCode开发一个打字稿项目,其中包括... 查看详情

如何使用带有表单数据主体而不是 json 主体的 http 'POST'? (Angular2/打字稿)

...题】:Howtousehttp\'POST\'withform-databodyinsteadofjsonbody?(Angular2/Typescript)如何使用带有表单数据主体而不是json主体的http\'POST\'?(Angular2/打字稿)【发布时间】:2017-01-1916:34:19【问题描述】:我有 查看详情

如何在 TypeScript 中重载方法?

】如何在TypeScript中重载方法?【英文标题】:HowtooverloadmethodinTypeScript?【发布时间】:2018-02-1907:48:57【问题描述】:我有一个方法在签名中获取对象的参数。我想传递对象而不是传递给许多参数,另一方面,我不想更改现有方法... 查看详情