deno

Deno 几种常用的传参方式

限于喜欢 提交于 2020-08-11 10:41:37
视频讲解: https://www.bilibili.com/video/BV1BT4y1E7Nh/?p=8 我们一起来完成以下步骤: 以key-value方式传参 以value方式传参 使用oak Helpers 接受传参 body 传参 header 传参 #controllers/controller.ts import { getQuery } from "https://deno.land/x/oak/helpers.ts" ; const { cwd } = Deno; class Controller { static async hello(ctx: any){ //cwd获取当前工程目录 //注意 ' !== ` ctx.render( ` ${cwd()} /views/index.ejs` ,{ title : "Testing" , data :{ name : " Deepincoding" } }); } //key-value 方式传参 static async searchParams(ctx: any){ var id = ctx.request.url.searchParams.get( "id" ); var name = ctx.request.url.searchParams.get( "name" ); ctx.response.body

Deno MongoDB 增删查改 接口

你。 提交于 2020-08-09 14:42:28
#Deno MongoDB 增删查改 接口 视频演示: https://www.bilibili.com/video/BV1BT4y1E7Nh/?p=10 一起来完成以下步骤: 使用上个工程代码(09.mysql增删查改工程)。 如果你没有看上个视频,建议看一下。 本节将不在重复的之前的内容和代码 修改employee 实体类,把ID删除掉 新增mongodb 数据库连接 修改仓库类的增删查改(controller到service层基本上不用修改代码) 测试 运行命令 deno run --allow-net --allow-write --allow-read --allow-plugin --unstable main.ts #controllers/employeeController.ts import { Context } from "https://deno.land/x/oak/mod.ts" ; import { Employee } from "../models/employee.ts" ; import employeeService from "../services/employeeService.ts" ; const { cwd } = Deno; class Controller { static async hello(ctx: any ) {

Deno 加载依赖包出错

我的未来我决定 提交于 2020-08-09 02:51:26
视频讲解 https://www.bilibili.com/video/BV1qK4y1x7VG/ 在开发过程中,经常遇到DNS解析域名错误的问题。导致js依赖包没法下载 我们一起来完成以下步骤: 先来发现问题 域名是否能访问? 解析域名(https://www.ipaddress.com/)的IP。在没有使用 openssl 或 shadowsocks 情况下是否能ping通 修改Hosts文件(C:\Windows\System32\drivers\etc) 再重新run一下应用 #main.ts import { Application, Router } from "https://deno.land/x/oak/mod.ts" ; const router = new Router(); const app = new Application(); router.get( "/" ,(ctx) =>{ ctx.response.body= "Hello World " ; }) app.use(router.routes()); app.use(router.allowedMethods()); await app.listen({ port : 8000 }); 完 来源: oschina 链接: https://my.oschina.net/u/3270570

Deno MySQl ORM

放肆的年华 提交于 2020-07-29 07:45:58
视频演示 https://www.bilibili.com/video/BV1BT4y1E7Nh/?p=14 一起来完成以下步骤: 创建数据库连接 创建Model,也就是实体类 写新增、修改、查询和删除 运行:deno run --allow-net --allow-read --allow-write main.ts #controllers/employeeController.ts //引入Context import { Context } from "https://deno.land/x/oak/mod.ts" ; //引入仓库类 import employeeRepo from "../repositories/employeeRepo.ts" ; //获取当前目录方法 const { cwd } = Deno; class Controller { static async hello(ctx: any ) { //cwd获取当前工程目录 //注意 ' !== ` ctx.render( ` ${cwd()} /views/index.ejs` , { title: "Testing" , data: { name: "www.deepincoding.com" } }); } //保存 static async save(ctx: Context) { const

JavaScript 开发人员更喜欢 Deno 的五大原因

时光毁灭记忆、已成空白 提交于 2020-07-28 01:10:56
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! NodeJS 的创造人 Ryan Dahl 刚发布了一个新的运行时 Deno,旨在解决 Node 存在的许多缺陷。像大家一样,我一开始也以为这只是又一个 JS 框架。但是深入了解过 Deno 的各项优点之后,我意识到了 Deno 正是 2020 年的今天,后端 Javascript 开发人员所需要的东西。在这篇文章中,我们就来看一下 JavaScript 开发人员为什么在使用 Deno 时能比 Node 获得更流畅、更现代化的体验。 现代化的 Javascript——ES 模块 如果你也像我一样是一位 React 开发人员,你会注意到使用 NodeJS 导入软件包的语法是不一样的。这是因为 Node 面世于 2009 年,这些年来 Javascript 得到了大量更新和改进。 在 React(和 Deno)中,我们使用 import package from 'package’语法,而在 Node 中我们使用 const package = require(“package”) 语法。 Deno 的 ES 模块 import 有两个优势: 1.通过 import,你可以有选择地从包中加载所需的部件,从而节约了内存空间。 2.加载与 require 是同步的,而 import

deno + mongodb 实战踩坑记

送分小仙女□ 提交于 2020-07-27 10:52:41
自从 deno 1.0 发布以来,有关 deno 的文章很多,大多数都是在讨论怎么安装 deno 、deno 有哪些特点 、deno 和 node 有哪些异同、deno是不是 node 的替代品等。咱们今天不讨论这些,毕竟 Talk is cheap. Show me the code! 亲自体验一把 deno 开发带来的快感、用 deno 搞一个“企业级”应用: deno-supermarket ,难道不香吗? deno 常见的一些坑 在实战之前,还是先来介绍几个我在刚接触 deno 时遇到的小坑。 权限标志符位置的问题 我们都知道, deno 默认是安全的,就是导致了默认情况下是不允许访问网络、读写文件等。比如有个名为 index.ts 的文件内容如下: import { serve } from "https://deno.land/std@0.50.0/http/server.ts"; const s = serve({ port: 8000 }); console.log("http://localhost:8000/"); for await (const req of s) { req.respond({ body: "Hello World\n" }); } 如果直接执行 deno run index.ts , 会报错: error: Uncaught

How to use npm module in DENO?

本小妞迷上赌 提交于 2020-07-26 07:57:48
问题 Deno is super cool. I saw it in the morning and want to migrate to deno now. I was trying to move my existing nodejs script to deno. Can any one help me on how to use npm modules in deno. I need esprima module. This one has the package https://github.com/denoland/deno_third_party/tree/master/node_modules but i am not able to figure out how to use that. 回答1: Deno provides a Node Compatibility Library, that will allow to use some NPM packages that do not use non-polyfilled Node.js APIs. You'll

How to use npm module in DENO?

筅森魡賤 提交于 2020-07-26 07:55:53
问题 Deno is super cool. I saw it in the morning and want to migrate to deno now. I was trying to move my existing nodejs script to deno. Can any one help me on how to use npm modules in deno. I need esprima module. This one has the package https://github.com/denoland/deno_third_party/tree/master/node_modules but i am not able to figure out how to use that. 回答1: Deno provides a Node Compatibility Library, that will allow to use some NPM packages that do not use non-polyfilled Node.js APIs. You'll

Deno: Can you Intercept Module Loading/Importing?

丶灬走出姿态 提交于 2020-07-16 06:50:22
问题 Does deno have any features that allow you to intercept the loading of a module that's included via import ? That is -- in Node.js programmers can redefine the require in order to intercept the loading of CommonJS modules. Node.js also features experimental loaders that allow you to intercept ES6 module loading. Does deno have anything similar to this for its stock module loader (i.e. for import )? If not, are there plans for anything like this in deno, or does the project's philosophy stand

How can I download big files in Deno?

痞子三分冷 提交于 2020-07-08 12:48:57
问题 I'm trying to download a 10GB file, but only 4GB get saved to disk, and memory is growing a lot. const res = await fetch('https://speed.hetzner.de/10GB.bin'); const file = await Deno.open('./10gb.bin', { create: true, write: true }) const ab = new Uint8Array(await res.arrayBuffer()) await Deno.writeAll(file, ab) 回答1: You're buffering the response, that's why the memory is growing. You can iterate through res.body since it's currently a ReadableStream which implements Symbol.asyncIterator and