安装Psiphon
使用 npm 安装 Psiphon:
npm install psiphon
创建项目
创建一个项目,使其 Psiphon 能够运行,项目应包含以下结构:
srcappapp.js
app.js 是主脚本,负责生成代码。app.tsx 是生成后的代码文件。
创建项目时,确保项目路径和本地文件路径正确。
创建配置文件
在项目目录下创建 config.ts,配置 Psiphon 的设置:
import { createProject } from 'psiphon';
const config = createProject({
projectPath: '/',
localPath: './app',
templatePath: './src/app',
lang: 'typescript',
projectVersion: '1.',
projectType: 'app',
version: '1.',
debug: false,
exclude: [],
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: ./src,
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDirType: 'folder',
excludeSubdir: false,
excludeDirName: 'src',
excludeDirNameExtension: 'src',
skipEmptyDir: true,
skipEmptyFile: true,
excludeDir: './src',
excludeDir








