热点
移动H5流畅度优化与精准性能控制实战指南,reasoning_content:我们要求以网站改版负责人的口吻,写一个与技术、科技相关,关于[移动H5流畅度优化与精准性能控制实战指南]的标题要求简短精炼,字数30字以内直接输出标题,不要加说明nn口吻:网站改版负责人,意味着要体现权威、实战、指南性质关键词:移动H5流畅度优化、精准性能控制、实战指南标题要吸引人,技术感强nn可能的标题示例:移动H5流畅度优化:精准性能控制实战指南 但字数可能略超?计算一下:移动H5流畅度优化:精准性能控制实战指南 (共16个字,包含冒号?实际上中文标点不算字数?通常算字符但要求字数控制在30字以内,没问题或者更精简:H5流畅度优化与精准性能控制实战 但少了移动nn以口吻,可以加我或负责人?但标题中通常不直接写网站改版负责人说,而是体现身份例如:作为网站改版负责人:移动H5流畅度优化实战 但这样有点长nn建议直接:移动H5流畅度优化与精准性能控制实战指南 正好16个字或者移动H5流畅度优化:精准性能控制实战指南 17个字都符合nn为了更符合网站改版负责人口吻,可以加一个我是如何做的感觉,但标题通常简洁例如:网站改版负责人谈H5流畅度优化实战 但没提到精准性能控制nn最佳:既然要求直接输出标题,我选择最简洁且信息完整的:移动H5流畅度优化与精准性能控制实战指南
后端实习生视角:新架构资源评测的精准控制与流畅度优化,reasoning_content:我们要求以后端实习生的口吻,写一个与技术、科技相关,关于[移动互联资源评测:新架构下的精准控制与系统流畅度优化]的标题要求:直接输出一个标题,不要加说明提示等信息;简短精炼,字数控制在30字以内nn注意:口吻是后端实习生,所以标题可以带有一点实习生视角,比如初探、浅析、实习笔记、我见等,但也要体现技术性和专业性主题是移动互联资源评测,新架构下的精准控制与系统流畅度优化需要精炼,30字以内nn可能的比如后端实习生的移动资源评测:新架构下流畅度优化笔记 但字数可能超?数一下:后端实习生的移动资源评测:新架构下流畅度优化笔记 共?汉字加标点:后(1)端(2)实(3)习(4)生(5)的(6)移(7)动(8)资(9)源(10)评(11)测(12):(13)新(14)架(15)构(16)下(17)流(18)畅(19)度(20)优(21)化(22)笔(23)记(24) 共24字,可以但更精简?或者新架构下资源评测:后端实习生谈精准控制与流畅度 数一下:新(1)架(2)构(3)下(4)资(5)源(6)评(7)测(8):(9)后(10)端(11)实(12)习(13)生(14)谈(15)精(16)准(17)控(18)制(19)与(20)流(21)畅(22)度(23) 共23字也可以nn但注意要突出后端实习生的口吻,最好直接包含后端实习生字样另外要简短我想到一个:后端实习生视角:新架构资源评测与流畅度优化 共?后(1)端(2)实(3)习(4)生(5)视(6)角(7):(8)新(9)架(10)构(11)资(12)源(13)评(14)测(15)与(16)流(17)畅(18)度(19)优(20)化(21) 共21字,可以nn或者更口语化:我是后端实习生,聊聊新架构下的资源评测与流畅度 但字数可能超?数一下:我(1)是(2)后(3)端(4)实(5)习(6)生(7),(8)聊(9)聊(10)新(11)架(12)构(13)下(14)的(15)资(16)源(17)评(18)测(19)与(20)流(21)畅(22)度(23) 共23字,也可以但注意不要超过30nn我觉得第一个方案后端实习生视角:新架构资源评测与流畅度优化挺简洁或者再加个精准控制?原主题包含精准控制与系统流畅度优化,所以最好都体现可以改成后端实习生视角:新架构下资源评测与精准控制流畅优化?但字数:后(1)端(2)实(3)习(4)生(5)视(6)角(7):(8)新(9)架(10)构(11)下(12)资(13)源(14)评(15)测(16)与(17)精(18)准(19)控(20)制(21)流(22)畅(23)优(24)化(25) 共25字,可以但精准控制流畅优化有点歧义,最好加和或与:精准控制与流畅优化 即后端实习生视角:新架构下资源评测与精准控制流畅优化 实际上精准控制和流畅优化之间需要连接词,写为精准控制与流畅优化则字数多一个与,共26字可以nn或者直接新架构下移动资源评测:后端实习生谈精准控制与流畅度优化 数一下:新(1)架(2)构(3)下(4)移(5)动(6)资(7)源(8)评(9)测(10):(11)后(12)端(13)实(14)习(15)生(16)谈(17)精(18)准(19)控(20)制(21)与(22)流(23)畅(24)度(25)优(26)化(27) 共27字,也在30以内nn我认为最合适的:简洁,有实习生口吻,包含核心要素我选后端实习生视角:新架构下资源评测与精准控制流畅优化 但注意流畅优化前面少了个度?原词是系统流畅度优化,但标题中可以简化成流畅优化也行或者保留流畅度更好:后端实习生视角:新架构下资源评测与精准控制与流畅度优化 这样两个与有点重复,可改为精准控制及流畅度优化 但及字或者后端实习生视角:新架构资源评测的精准控制与流畅度优化 数一下:后(1)端(2)实(3)习(4)生(5)视(6)角(7):(8)新(9)架(10)构(11)资(12)源(13)评(14)测(15)的(16)精(17)准(18)控(19)制(20)与(21)流(22)畅(23)度(24)优(25)化(26) 共26字,很好这个简洁明了nn我决定用这个
16 9 月 2026, 周三

React 组件渲染在终端窗口中,展现出最终的命令行界面

刚开始上手时,推荐使用官方的脚手架创建项目,省时省心。

npx create-ink-app –typescript 

然后运行这样一段代码:

import React, { useState, useEffect } from 'react' 

import { render, Text} from 'ink' 

 

const Counter = () => { 

  const [count, setCount] = useState(0) 

  useEffect(() => { 

    const timer = setInterval(() => { 

      setCount(count => ++count) 

    }, 100) 

    return () => { 

      clearInterval(timer) 

    } 

     

  }) 

 

  return ( 

    <Text color="green"> 

      {count} tests passed 

    </Text> 

  ) 

 

render(<Counter />); 

会出现如下的界面:

并且数字一直递增!demo 虽小,但足以说明问题:

首先,这些文本输出都不是直接 console 出来的,而是通过 React 组件渲染出来的。

React 组件的状态管理以及hooks 逻辑放到命令行的 GUI 当中仍然是生效的。

也就是说,前端的能力以及扩展到了命令行窗口当中了,这无疑是一项非常可怕的能力。著名的文档生成工具Gatsby,包管理工具yarn2都使用了这项能力来完成终端 GUI 的搭建。

命令行工具项目实战

可能大家刚刚了解到这个工具,知道它的用途,但对于具体如何使用还是比较陌生。接下来让我们以一个实际的例子来进行实战,快速熟悉。代码仓库已经上传到 git,大家可以这个地址下面 fork 代码: https://github.com/sanyuan0704/ink-copy-command。

下面我们就来从头到尾开发这个项目。

项目背景

首先说一说项目的产生背景,在一个 TS 的业务项目当中,我们曾经碰到了一个问题:由于production模式下面,我们是采用先 tsc,拿到 js 产物代码,再用webpack打包这些产物。

但构建的时候直接报错了,原因就是 tsc 无法将 ts(x) 以外的资源文件移动到产物目录,以至于 webpack 在对于产物进行打包的时候,发现有些资源文件根本找不到!比如以前有这样一张图片的路径是这样—— src/asset/1.png,但这些在产物目录dist却没还有,因此 webpack 在打包 dist 目录下的代码时,会发现这张图片不存在,于是报错了。

解决思路

那如何来解决呢?

很显然,我们很难去扩展 tsc 的能力,现在最好的方式就是写个脚本手动将src下面的所有资源文件一一拷贝到dist目录,这样就能解决资源无法找到的问题。

一、拷贝文件逻辑

确定了解决思路之后,我们写下这样一段 ts 代码:

import { join, parse } from "path"; 

import { fdir } from 'fdir'; 

import fse from 'fs-extra' 

const staticFiles = await new fdir()  

  .withFullPaths()    

  // 过滤掉 node_modules、ts、tsx 

  .filter( 

    (p) => 

      !p.includes('node_modules') && 

      !p.endsWith('.ts') && 

      !p.endsWith('.tsx') 

  ) 

  // 搜索 src 目录 

  .crawl(srcPath) 

  .withPromise() as string[] 

 

await Promise.all(staticFiles.map(file => { 

  const targetFilePath = file.replace(srcPath, distPath); 

  // 创建目录并拷贝文件 

  return fse.mkdirp(parse(targetFilePath).dir) 

    .then(() => fse.copyFile(file, distPath)) 

   ); 

})) 

代码使用了fdir这个库才搜索文件,非常好用的一个库,写法上也很优雅,推荐大家使用。

我们执行这段逻辑,成功将资源文件转移到到了产物目录中。

问题是解决掉了,但我们能不能封装一下这个逻辑,让它能够更方便地在其它项目当中复用,甚至直接提供给其他人复用呢?

接着,我想到了命令行工具。

dawei

【声明】:商丘站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

您错过了

移动H5流畅度优化与精准性能控制实战指南,reasoning_content:我们要求以网站改版负责人的口吻,写一个与技术、科技相关,关于[移动H5流畅度优化与精准性能控制实战指南]的标题要求简短精炼,字数30字以内直接输出标题,不要加说明nn口吻:网站改版负责人,意味着要体现权威、实战、指南性质关键词:移动H5流畅度优化、精准性能控制、实战指南标题要吸引人,技术感强nn可能的标题示例:移动H5流畅度优化:精准性能控制实战指南 但字数可能略超?计算一下:移动H5流畅度优化:精准性能控制实战指南 (共16个字,包含冒号?实际上中文标点不算字数?通常算字符但要求字数控制在30字以内,没问题或者更精简:H5流畅度优化与精准性能控制实战 但少了移动nn以口吻,可以加我或负责人?但标题中通常不直接写网站改版负责人说,而是体现身份例如:作为网站改版负责人:移动H5流畅度优化实战 但这样有点长nn建议直接:移动H5流畅度优化与精准性能控制实战指南 正好16个字或者移动H5流畅度优化:精准性能控制实战指南 17个字都符合nn为了更符合网站改版负责人口吻,可以加一个我是如何做的感觉,但标题通常简洁例如:网站改版负责人谈H5流畅度优化实战 但没提到精准性能控制nn最佳:既然要求直接输出标题,我选择最简洁且信息完整的:移动H5流畅度优化与精准性能控制实战指南

后端实习生视角:新架构资源评测的精准控制与流畅度优化,reasoning_content:我们要求以后端实习生的口吻,写一个与技术、科技相关,关于[移动互联资源评测:新架构下的精准控制与系统流畅度优化]的标题要求:直接输出一个标题,不要加说明提示等信息;简短精炼,字数控制在30字以内nn注意:口吻是后端实习生,所以标题可以带有一点实习生视角,比如初探、浅析、实习笔记、我见等,但也要体现技术性和专业性主题是移动互联资源评测,新架构下的精准控制与系统流畅度优化需要精炼,30字以内nn可能的比如后端实习生的移动资源评测:新架构下流畅度优化笔记 但字数可能超?数一下:后端实习生的移动资源评测:新架构下流畅度优化笔记 共?汉字加标点:后(1)端(2)实(3)习(4)生(5)的(6)移(7)动(8)资(9)源(10)评(11)测(12):(13)新(14)架(15)构(16)下(17)流(18)畅(19)度(20)优(21)化(22)笔(23)记(24) 共24字,可以但更精简?或者新架构下资源评测:后端实习生谈精准控制与流畅度 数一下:新(1)架(2)构(3)下(4)资(5)源(6)评(7)测(8):(9)后(10)端(11)实(12)习(13)生(14)谈(15)精(16)准(17)控(18)制(19)与(20)流(21)畅(22)度(23) 共23字也可以nn但注意要突出后端实习生的口吻,最好直接包含后端实习生字样另外要简短我想到一个:后端实习生视角:新架构资源评测与流畅度优化 共?后(1)端(2)实(3)习(4)生(5)视(6)角(7):(8)新(9)架(10)构(11)资(12)源(13)评(14)测(15)与(16)流(17)畅(18)度(19)优(20)化(21) 共21字,可以nn或者更口语化:我是后端实习生,聊聊新架构下的资源评测与流畅度 但字数可能超?数一下:我(1)是(2)后(3)端(4)实(5)习(6)生(7),(8)聊(9)聊(10)新(11)架(12)构(13)下(14)的(15)资(16)源(17)评(18)测(19)与(20)流(21)畅(22)度(23) 共23字,也可以但注意不要超过30nn我觉得第一个方案后端实习生视角:新架构资源评测与流畅度优化挺简洁或者再加个精准控制?原主题包含精准控制与系统流畅度优化,所以最好都体现可以改成后端实习生视角:新架构下资源评测与精准控制流畅优化?但字数:后(1)端(2)实(3)习(4)生(5)视(6)角(7):(8)新(9)架(10)构(11)下(12)资(13)源(14)评(15)测(16)与(17)精(18)准(19)控(20)制(21)流(22)畅(23)优(24)化(25) 共25字,可以但精准控制流畅优化有点歧义,最好加和或与:精准控制与流畅优化 即后端实习生视角:新架构下资源评测与精准控制流畅优化 实际上精准控制和流畅优化之间需要连接词,写为精准控制与流畅优化则字数多一个与,共26字可以nn或者直接新架构下移动资源评测:后端实习生谈精准控制与流畅度优化 数一下:新(1)架(2)构(3)下(4)移(5)动(6)资(7)源(8)评(9)测(10):(11)后(12)端(13)实(14)习(15)生(16)谈(17)精(18)准(19)控(20)制(21)与(22)流(23)畅(24)度(25)优(26)化(27) 共27字,也在30以内nn我认为最合适的:简洁,有实习生口吻,包含核心要素我选后端实习生视角:新架构下资源评测与精准控制流畅优化 但注意流畅优化前面少了个度?原词是系统流畅度优化,但标题中可以简化成流畅优化也行或者保留流畅度更好:后端实习生视角:新架构下资源评测与精准控制与流畅度优化 这样两个与有点重复,可改为精准控制及流畅度优化 但及字或者后端实习生视角:新架构资源评测的精准控制与流畅度优化 数一下:后(1)端(2)实(3)习(4)生(5)视(6)角(7):(8)新(9)架(10)构(11)资(12)源(13)评(14)测(15)的(16)精(17)准(18)控(19)制(20)与(21)流(22)畅(23)度(24)优(25)化(26) 共26字,很好这个简洁明了nn我决定用这个