if (packageJSON && typeof packageJSON === "object") { // 检查存在 name 字段....if ("name" in packageJSON && typeof packageJSON.name === "string") { return packageJSON.name...packageJSON = context.packageJSON; // 检查我们收到的类型是一个 object....packageJSON.name 就不会报错了。...{ const packageJSON = context.packageJSON; // 检查我们收到的类型是一个 object.
; // 检查是否是个对象 if (packageJSON && typeof packageJSON === "object") { // 检查是否存在一个字符串类型的...name 属性 if ("name" in packageJSON && typeof packageJSON.name === "string") { return...if (packageJSON && typeof packageJSON === "object") { // 检查是否存在一个字符串类型的 name 属性 if ("...比如在上面的例子中,packageJSON 的类型会被收窄为 object & Record,这样我们直接访问 packageJSON.name 就没问题了!...| undefined { const packageJSON = context.packageJSON; // 检查是否是个对象 if (packageJSON && typeof
newVersion + "-" + md5(`${new Date().getTime()}${newVersion}`); 将最新的版本号信息重新写入 package.json 文件: var packageJson.../package.json"); var packageJson = JSON.parse(packageJson); packageJson.version = newVersion; var newPackage...= JSON.stringify(packageJson); fs.writeFileSync("..../package.json"); var packageJson = JSON.parse(packageJson); packageJson.version = newVersion;...var newPackage = JSON.stringify(packageJson); fs.writeFileSync(".
ts from 'rollup-plugin-typescript2' const getPath = _path => path.resolve(__dirname, _path) import packageJSON...), commonjs(), esPlugin, tsPlugin, ] } // 需要导出的模块类型 const outputMap = [ { file: packageJSON.main..., // 通用模块 format: 'umd', }, { file: packageJSON.module, // es6模块 format: 'es', } ]...Object.assign({}, commonConf, options) export default outputMap.map(output => buildConf({ output: {name: packageJSON.name
前言 npm发包的时候报错,说不是一个有效的新包,最后发现是包名包含大写字母造成,修改package.json中的包名即可; packagejson-fields:packagejson-fields
for await (const path of globby.stream(pkgGlob, { ignore: ['**/node_modules'] })) { const packageJson...= readPackageJson(path); if (packageJson && isPlainObject(packageJson)) {...const packageDepKey = getPackageJsonDepKey(packageJson, options.ignorePackage); if (Array.isArray
迁移脚本 每次打包后,导出新的包文件会很麻烦,所以可以使用gulp将打包后的文件导入到项目中. const { series, src, dest } = require('gulp'); const packageJson.../${target}/${source}/\`) return move(from, to) }) function trucks(){ console.log(packageJson.files...) const task = buildTask(packageJson.files, packageJson.moveTarger) console.log(task) return
peerDepsExternal from 'rollup-plugin-peer-deps-external' 6import { terser } from 'rollup-plugin-terser' 7 8const packageJson.../package.json') 9 10const umdName = packageJson.name 11 12const globals = { 13 ...packageJson.devDependencies
NODE\_ENV=local&rollup -c rollup.config.js" } // rollup // 本地打包 let outputMap = [ { file: packageJSON.main..., format: 'umd', }, { file: packageJSON.module, format: 'es', } ] // 输出到基座目录 if(ENV
export default function sortDependencies(packageJson) { const sorted = {} const depTypes = ['dependencies...devDependencies', 'peerDependencies', 'optionalDependencies'] for (const depType of depTypes) { if (packageJson...[depType]) { sorted[depType] = {} Object.keys(packageJson[depType]) .sort()....forEach((name) => { sorted[depType][name] = packageJson[depType][name] }) }...} return { ...packageJson, ...sorted } } 2.2.4 清除旧项目 rm -rf 之前经常遇到一个问题是 fs.rmdirSync 这个函数只能删除空文件夹
npm init:初始化一个新的 Node.js 项目,会生成一个packagejson的文件,项目的配置信息。npm start:启动项目。npm test:运行项目的测试套件。
create-react-app/createReactApp.js文件 const chalk = require('chalk') const { Command } = require('commander') const packageJson.../package.json') const init = async () => { let appName; new Command(packageJson.name) .version...(packageJson.version) .arguments('') .usage(`${chalk.green('<project-directory...fse.ensureDirSync(appName) console.log(`Creating a new React app in ${chalk.green(root)}.`) const packageJson...private: true, } fse.writeFileSync( path.join(root, 'package.json'), JSON.stringify(packageJson
npm init #初始化(会生成一个packagejson的文件,项目的配置信息) 17.
我们将询问项目应该使用哪个模块系统,并将其设置为packageJson对象中的type属性值,然后将其写回到项目的package.json文件中: const packageJson = await readPackageJson...(targetDirectory); const selectedModuleSystem = await getNodeModuleSystem(); packageJson.type = selectedModuleSystem...; await writePackageJson(targetDirectory, packageJson); 提示:当你用--yes标志运行npm init时,要想在package.json中获得合理的默认值
packageJson.jpg 上面的一部分是项目相关信息 scripts节点是已经配置好了几个常用的 npm script(npm将在下一章节详细讨论) dependencies节点是项目发布的依赖
command.js文件,文件内容如下: const commander = require('commander'); const chalk = require('chalk'); const packageJson.../package.json'); const log = console.log; function initCommand(){ commander.version(packageJson.version
为此,我们可以引入package.json文件,然后引用依赖项以获取版本号: var packageJson =require('..../package.json') console.log('\n** Using Spreadjs Version"' + packageJson.dependencies["@grapecity/spread-sheets
path'); function getPackageJson(cwd) { const packagePath = path.join(cwd, 'package.json'); let packageJson...; try { packageJson = fs.readFileSync(packagePath, 'utf-8'); } catch (err) { throw new Error...(`The package.json file at '${packagePath}' does not exist`); } try { packageJson = JSON.parse...(packageJson); } catch (err) { throw new Error('The package.json is malformed'); } return...packageJson; } 对象排序 这里主要是在输出 package.json 的时候可以对输出的对象先进行排序,更美观一些。。
19. package.json package.json介绍链接地址: http://javascript.ruanyifeng.com/nodejs/packagejson.html “它是一个交互式的指南
引言 Q&A 补充 npm 项目 读取 package.json 的 version 作为项目版本 env.js // import packageJson from '..
领取专属 10元无门槛券
手把手带您无忧上云