极简系列
极简入门
简介
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/manual@v1.34.0/getting_started/installation
dvm(deno版本管理器推荐)
dvm官网
https://deno.land/x/dvm@v1.8.6
安装
官网方式
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插件(代码提示)
在项目中启动插件, 一路yes
入门
命令行cli
- info: 查看脚本依赖树
deno info server.ts
- bundle: 打包输出文件
deno bundel http.ts http.output.js
- fmt: 格式化代码
deno fmt server.ts
- compile:编译为可执行程序
deno compile index.ts
- install: 安装模块
deno install -f -n wcopy -A index.js
可选参数
- –reload: 重新下载依赖
deno --reload``deno -r
- –allow-net:允许网络
deno run --allow-net
- –allow-read: 允许读权限
deno run --allow-read file.ts
- –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/std@0.189.0
模块
// 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项目