dvb
v0.8.8
Published
secret
Downloads
29
Readme
核心类:vm.SourceTextModule 类
新增于: v9.6.0 稳定性: 1 - 实验 此特性仅在启用 --experimental-vm-modules 命令标志时可用。
在构建的时候index.mjs或被重写,所以尽量不要在index.mjs里面开发
编译文件操作*.mjs文件编译成*.bjs
config.mjs会被私钥加密,编译后会用公钥解密后使用,所以可以将授权等信息逻辑放在里面。
编译环境和运行环境的nodejs版本最好一致。
编译
import {build} from 'dvb'
build('./main.mjs') // 入口文件
node --experimental-vm-modules build.mjs
root ┳ dist ┳ index.mjs // 被重写生成的入口文件
┃ ┇ public.key // 用于解开被加密的config.bjs文件
┃ ┇ *.bjs // *.mjs编译生成对于的文件
┃ ┗ *.* // 未被编译直接复制过来的文件
┣ node_modules // 忽略
┣ build.mjs // 忽略,所以这个适合写构建文件
┣ index.mjs // 会被重写所以别用这个文件
┣ config.mjs // 会被加密
┣ private.key // 没有会自动生成,但不会被移动到dist
┣ public.key // 没有会自动生成
┇ *.mjs // 会被编译成*.bjs放在dist目录下对应的原目录结构下
┗ *.* // 会被移动到dist目录下对应的原目录结构下
dist直接作为根目录执行index.mjs
node --experimental-vm-modules index.mjs
开发模式注解
let env = 'prod'
// IF DEV
env = 'dev'
// END DEV
// 编译前:env === 'dev'
// 编译后:env === 'prod'