标签: package.json

如何使用 Vite 将 package.json 中的当前应用版本显示给用户?

通过 create-react-app 可以实现process.env.REACT_APP_VERSION这一点。

Vite中有类似的吗?

npm package.json vite

46
推荐指数
5
解决办法
3万
查看次数

如何配置package.json来运行eslint脚本

所以我使用eslint作为我的反应项目的linter,我希望它能检查我的所有.js文件.

我可以通过脚本执行此操作:

"lint": "eslint back/*.js && eslint backTest/*.js && eslint front/actions/*.js"
Run Code Online (Sandbox Code Playgroud)

如何让它以.js递归方式检查每个文件,例如:

"lint": "eslint -r *.js"
Run Code Online (Sandbox Code Playgroud)

这样可以省去我必须在每个文件中输入内容

在此先感谢您的帮助

lint reactjs webpack package.json

45
推荐指数
3
解决办法
3万
查看次数

创建package.json时的测试命令是什么?

package.json命令行npm init中创建用于在Node.js中创建模块时,有一个我不知道的测试命令字段.npm help json在CLI中也没有在文档中提及它.

请解释一下它是什么.

node.js package.json

44
推荐指数
2
解决办法
3万
查看次数

错误:EPERM:不允许操作,取消链接'D:\ Sources\**\node_modules\fsevents \node_modules\abbrev\package.json'

我刚刚更新npm5.4.0.
现在,每当我想安装一个npm包时,我都会收到以下错误:

D:\Sources\DownloadCms\Md.Download\Web.Angular>npm install mds.angular.datetimepicker@latest --save
npm ERR! path D:\Sources\DownloadCms\Md.Download\Web.Angular\node_modules\fsevents\node_modules\abbrev\package.json
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! syscall unlink
npm ERR! Error: EPERM: operation not permitted, unlink 'D:\Sources\DownloadCms\Md.Download\Web.Angular\node_modules\fsevents\node_modules\abbrev\package.json'
npm ERR!     at Error (native)
npm ERR!  { Error: EPERM: operation not permitted, unlink 'D:\Sources\DownloadCms\Md.Download\Web.Angular\node_modules\fsevents\node_modules\abbrev\package.jso
n'
npm ERR!     at Error (native)
npm ERR!   stack: 'Error: EPERM: operation not permitted, unlink \'D:\\Sources\\DownloadCms\\Md.Download\\Web.Angular\\node_modules\\fsevents\\node_modules\\ab
brev\\package.json\'\n    at Error (native)',
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR! …
Run Code Online (Sandbox Code Playgroud)

npm package.json

42
推荐指数
12
解决办法
6万
查看次数

如何使用package.json脚本复制具有特定文件扩展名的文件

我正在尝试将npm作为构建工具.

我遇到的一个绊脚石是我需要将javascript文件从一个文件夹复制到另一个文件夹.源文件夹包含打字稿文件,javascript文件和地图文件,但在目标文件夹中我只对javascript文件感兴趣.

我不想为每个文件创建一个copy-statement,但是想要复制所有.js文件.此外,我的源文件夹包含也包含javascript文件的子文件夹.这些也需要复制,并维护子文件夹结构.

我尝试过使用NCP和过滤器,但我无法使用过滤器.我已经测试了过滤器中使用的正则表达式,它似乎工作正常.测试在做正则表达式测试仪用正则表达式.*\.js$和测试串状main.ts,main.js main.js.map等等,只有.js文件的字符串相匹配.

我的包json包含以下(缩写):

{
    "scripts": {
        "copy": "ncp scripts wwwroot/scripts --filter=\".*(\\\\.js$)\"" 
    }, 
    "devDependencies": { 
        "ncp": "2.0.0.0" 
    }
}
Run Code Online (Sandbox Code Playgroud)

由于我的正则表达式是一个字符串中的字符串,我已经双重转义它.我也尝试了其他变体,例如:

--filter=/.*\.js$/g       - compilation error
--filter=/.*\\.js$/g      - no files copied
--filter=\".*\\.js$\"     - no files copied
--filter=\"/.*\\.js$/g\"  - no files copied
(no filter)               - all files copied
Run Code Online (Sandbox Code Playgroud)

我与NCP没有任何关系.如果其他东西效果更好,那么我会用它.

那么:我如何在package.json的脚本部分中仅将具有特定扩展名的文件复制到另一个文件夹?我很确定我忽略了一些令人眼花缭乱的事情......

build-tools npm package.json

40
推荐指数
4
解决办法
5万
查看次数

如何指定webpack-dev-server webpack.config.js文件位置

我开始使用webpack.

我已经能够指定webpack webpack.config.js的位置,如下所示:

"webpack --config ./App/webpack.config.js"
Run Code Online (Sandbox Code Playgroud)

现在我也尝试将webpack-dev-server与该文件一起使用,但是我找不到如何为它指定webpack.config.js位置.

这是我的package.json的相关部分

"scripts": {
  "start": "webpack-dev-server --config ./App/webpack.config.js --progress --colors",
  "build": "webpack --config ./App/webpack.config.js --progress --colors"
}
Run Code Online (Sandbox Code Playgroud)

如何将./App/目录传递给我的webpack-dev-server?

webpack package.json webpack-dev-server

37
推荐指数
2
解决办法
1万
查看次数

npm update不做任何事情

当我在package.json所在的应用程序文件夹中执行此代码时:

npm update或者npm update --save-dev它没有做任何事情.

但是,当我这样做时npm outdated,显示许多过时的包.

那么如何更新所有包?

OS: Win 10 x64
nodejs: 6.2.2
npm:3.10.7

package.json

{
  "name": "tgb-frontend",
  "version": "0.0.0",
  "license": "MIT",
  "angular-cli": {},
  "scripts": {
    "start": "ng serve",
    "lint": "tslint \"src/**/*.ts\"",
    "test": "ng test",
    "pree2e": "webdriver-manager update",
    "e2e": "protractor"
  },
  "private": true,
  "dependencies": {
    "@angular/common": "2.0.0",
    "@angular/compiler": "2.0.0",
    "@angular/core": "2.0.0",
    "@angular/forms": "2.0.0",
    "@angular/http": "2.0.0",
    "@angular/platform-browser": "2.0.0",
    "@angular/platform-browser-dynamic": "2.0.0",
    "@angular/router": "3.0.0",
    "core-js": "^2.4.1",
    "rxjs": "5.0.0-beta.12",
    "ts-helpers": "^1.1.1",
    "zone.js": "^0.6.23"
  },
  "devDependencies": {
    "@types/jasmine": "^2.2.30", …
Run Code Online (Sandbox Code Playgroud)

node.js npm package.json

37
推荐指数
3
解决办法
2万
查看次数

Webpack 4对包含sideEffects的包的期望是什么:false

Webpack 4增加了一项新功能:它现在支持捆绑的模块中的sideEffects标志package.json.

来自Webpack 4:今天发布

在过去的30天里,我们与每个框架密切合作,以确保他们已准备好在各自的cli等支持webpack 4.即使像lodash-es这样的流行库,RxJS也支持sideEffects标志,所以通过使用他们的最新版本版本,您将看到即时捆绑尺寸减少开箱即用.

来自Webpack文档

"sideEffects":big-module的package.json中的false标志表示包的模块没有副作用(评估时)并且只暴露导出.这允许像webpack这样的工具优化再出口.

虽然第二个链接显示了使用该标志的结果,但它没有清楚地解释什么构成副作用.ES6包含了此处概述的模块副作用的概念,但这与Webpack考虑的副作用有何关系.

sideEffects标志的上下文中,模块需要避免在sideEffects:false没有问题的情况下使用什么,或者对话,模块需要做什么才能sideEffects:false无问题地使用.

为了完整起见,尽管@ SeanLarkin在下面给出了可靠的答案,但我想对以下内容进行澄清:

  1. 显然,副作用意味着fp特有的东西,包括日志记录(控制台或其他地方)和抛出错误.我假设在这种情况下这些是完全可以接受的吗?

  2. 模块是否可以包含循环引用并仍然使用sideEffects: false

  3. 有没有办法验证或模块是否能够验证模块是否可以sideEffects: false超越试图追踪由其误用造成的错误?

  4. 是否还有其他因素会妨碍模块的使用sideEffects: false

javascript side-effects bundler webpack package.json

35
推荐指数
2
解决办法
8765
查看次数

代理不适用于反应和节点

我设置的代理有问题。

这是我的根 package.json 文件:

"scripts": {
    "client": "cd client && yarn dev-server",
    "server": "nodemon server.js",
    "dev": "concurrently --kill-others-on-fail \"yarn server\" \"yarn client\""
}
Run Code Online (Sandbox Code Playgroud)

我的客户端 package.json 文件:

"scripts": {
    "serve": "live-server public/",
    "build": "webpack",
    "dev-server": "webpack-dev-server"
},
"proxy": "http://localhost:5000/"
Run Code Online (Sandbox Code Playgroud)

我已经在我的服务器端设置了 express 在端口 5000 上运行。每当我向服务器发出请求时,即:

callApi = async () => {
    const response = await fetch('/api/hello');
    const body = await response.json();
    // ... more stuff
}
Run Code Online (Sandbox Code Playgroud)

请求总是转到

指向 http://localhost:8080/api/hello 的标头图片

有人可以指出我必须做些什么来解决这个问题,以便请求实际上转到端口 5000?

proxy node.js reactjs webpack package.json

33
推荐指数
7
解决办法
3万
查看次数

如何在没有grunt或gulp的情况下将typescript编译器作为package.json脚本运行

我不想使用grunt或gulp来编译ts文件.我只想在我的package.json中这样做:

  "scripts": {
    "build": "tsc main.ts dist/"
  },
Run Code Online (Sandbox Code Playgroud)

可能吗?

typescript package.json

28
推荐指数
2
解决办法
3万
查看次数