【Deno】极简入门

极简系列

极简入门

简介

Deno是一个 JavaScript/TypeScript 的运行时,默认使用安全环境执行代码,有着卓越的开发体验。

Deno建立在 V8、Rust 和 Tokio 的基础上。

优势

适合不喜欢复杂配置开箱即用的人群(如本人小溪)

  • 安全性高:Deno默认提供一些安全功能,访问文件系统/网络/环境变量时需要明确的权限授权等。
  • 支持TypeScript:Deno内置了TypeScript编译器和运行时,开发者可以直接使用TypeScript进行开发。
  • 依赖管理器:不需要使用类似npm的包管理工具,而是使用ES模块,可以直接引入模块,Deno会自动下载所需的依赖。
  • 单一可执行文件:Deno将所有运行时组件打包到一个二进制文件中,便于安装和部署。

官网

Deno — A modern runtime for JavaScript and TypeScript

安装

官方安装

https://deno.com/[email protected]/getting_started/installation

dvm(deno版本管理器推荐)

dvm官网

https://deno.land/x/[email protected]

安装

官网方式

curl -fsSL https://deno.land/x/dvm/install.sh | sh

这种方式目前有点问题,需要修改~/.bash_profile

//export PATH="$/Users/zhouwei/.dvm/bin:PATH"

// 修改
export PATH="/Users/zhouwei/.dvm/bin:$PATH"

网络安装

curl -o- https://raw.githubusercontent.com/ghosind/dvm/master/install.sh | bash

gitee镜像安装

curl -o- https://gitee.com/ghosind/dvm/raw/master/install.sh | DVM_SOURCE=gitee bash

升级

// 更新dvm
dvm upgrade

// 升级到指定版本
deno upgrade --version 1.1.0

示例

dvm install v1.0.0
dvm uninstall v0.42.0
dvm use v1.0.0
dvm alias default v1.0.0
dvm run v1.0.0 app.ts

安装deno

// 安装最新版deno
dvm install

检查环境

deno --version

// v8 10.9.194.5
// typescript 4.9.4

VSCode插件(代码提示)

【Deno】极简入门_第1张图片

在项目中启动插件, 一路yes

入门

命令行cli

  1. info: 查看脚本依赖树 deno info server.ts
  2. bundle: 打包输出文件 deno bundel http.ts http.output.js
  3. fmt: 格式化代码 deno fmt server.ts
  4. compile:编译为可执行程序 deno compile index.ts
  5. install: 安装模块 deno install -f -n wcopy -A index.js

可选参数

  1. –reload: 重新下载依赖 deno --reload``deno -r
  2. –allow-net:允许网络 deno run --allow-net
  3. –allow-read: 允许读权限 deno run --allow-read file.ts
  4. –allow-all: 运行所有权限 deno run --allow-all``deno run -A

-A 标志,与 --allow-all等价

deno run -A xx.ts

远程脚本

deno run https://deno.land/std/examples/welcome.ts

本地脚本

console.log('hello world');

//$ deno run index.js

web api(远程api)

https://deno.land/[email protected]

模块

// world.ts
export const world:string = 'world';
// hello.ts
import { world } from './world.ts';
console.log(`Hello ${world}`);

测试框架

import { world } from "./world.ts";

Deno.test("env", ()=> {
  if (world !== 'world') {
    throw Error('wrong!')
  }
})
deno test

发布(Deno Deploy)

Deno Deploy是Deno提供的官方托管的代码仓库,可以快速部署和分享Deno应用程序,可以直接创建项目,也可以托管github项目

你可能感兴趣的:(Deno学习笔记,deno,deno,deploy)