标签: package.json

node_modules 文件夹太大

我使用 Gulp 已经有一段时间了,要么我没有注意到它从一开始就占用了这么多空间,要么大小一直在增长。

我只将它用于非常正常的前端工作。例如,这是我的请求部分gulpfile.js

var gulp         = require('gulp'),
    autoprefixer = require('gulp-autoprefixer'),
    browserSync  = require('browser-sync'),
    concat       = require('gulp-concat'),
    copy         = require('gulp-copy'),
    del          = require('del'),
    htmlmin      = require('gulp-htmlmin'),
    merge        = require('merge-stream'),
    streamqueue  = require('streamqueue'),
    cleancss     = require('gulp-clean-css'),
    gulpif       = require('gulp-if'),
    newer        = require('gulp-newer'),
    imgmin       = require('gulp-imagemin'),
    plumber      = require('gulp-plumber'),
    postcss      = require('gulp-postcss'),
    order        = require('gulp-order'),
    rename       = require('gulp-rename'),
    runSequence  = require('run-sequence'),
    sass         = require('gulp-sass'),
    sourcemaps   = require('gulp-sourcemaps'),
    uglify       = require('gulp-uglify'),
    uncss        = require('gulp-uncss');
Run Code Online (Sandbox Code Playgroud)

现在,根据du -sh,node_modules 重 2.2GB,我认为这太多了。我想更深入地挖掘,所以我查看了所有根模块:

DaisyDisk 看一个普通的 node_modules/ 文件夹


我在这里可能很天真,但我只是期待一些 …

javascript node-modules gulp package.json

18
推荐指数
1
解决办法
7094
查看次数

Cordova 7 - config.xml或package.json?

我已经在Cordova上成功创建并发布了一个应用程序 - 所以我不是该平台的新手,但它并非没有它的打嗝和挫折.

使用Cordova 7,我们现在有config.xml和package.json,主要包含相同的信息.

如果我想更改,说版本号或标题,我编辑哪一个,然后如何相应地更新其他文件?

我尝试过的任何东西似乎都没有用,而且必须两次进行更改似乎相当多余?

cordova package.json

18
推荐指数
2
解决办法
4896
查看次数

将Angular 5 + Nodejs Express App部署到Heroku

我有一个Angular 5 App.

这就是我在package.json中的内容

{
  "name": "web",
  "version": "0.0.0",
  "license": "MIT",
  "scripts": {
    "ng": "ng",
    "start": "node server.js",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e",
    "postinstall": "ng build --aot --prod"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "5.1.0",
    "@angular/cli": "^1.6.4",
    "@angular/common": "5.0.3",
    "@angular/compiler": "5.0.3",
    "@angular/compiler-cli": "5.0.3",
    "@angular/core": "5.0.3",
    "@angular/forms": "5.0.3",
    "@angular/http": "5.0.3",
    "@angular/platform-browser": "5.0.3",
    "@angular/platform-browser-dynamic": "5.0.3",
    "@angular/router": "5.0.3",
    "@ng-bootstrap/ng-bootstrap": "1.0.0-beta.5",
    "@ngx-translate/core": "8.0.0",
    "@types/jquery": "3.2.16",
    "angular2-image-upload": "^1.0.0-rc.0",
    "bootstrap": "4.0.0-beta.2",
    "core-js": "2.4.1",
    "express": "^4.16.2",
    "jquery": "3.2.1",
    "jquery-slimscroll": …
Run Code Online (Sandbox Code Playgroud)

heroku node.js package.json angular angular5

18
推荐指数
2
解决办法
8670
查看次数

如果修改了package.json,则为npm install

TL; DR:有没有办法npm install在运行任何npm脚本之前自动运行如果你package.json已经被修改了?

问题场景

您拉出或签出更新的分支package.json.你跑npm run my-script.my-script取决于新添加的包package.json.my-script失败.你想知道为什么.在翻过你的桌子之前,你npm install一定要确定.my-script运行成功.你不需要一张新桌子.

我知道构建/任务运行器工具就像gradle在运行任务之前确保您的依赖项是最新的.我一直是一个(次要的)痛点,npm没有做到这一点.我偶然发现了两个我不喜欢的解决方案.

非理想的解决方案:制造

package.json可以使用make并使用其集成的依赖关系跟踪,而不是依赖于运行命令中的npm脚本,并使用以下技巧:

# Smart install: Only executes if package.json's
# modification date is later than node_module's

node_modules: package.json
    npm install
    @rm -f node_modules/.modified
    @touch -m node_modules/.modified

install: node_modules 
Run Code Online (Sandbox Code Playgroud)

资料来源:https://mattandre.ws/2016/05/make-for-hipsters/

问题是你知道必须依赖于make运行脚本并失去npm脚本的某些优点,例如方便地引用其他脚本和并行运行脚本(npm-run-all).如果他们不知道make或运行有问题,也很难与他人合作(Windows).它是node/npm生态系统之外的一个古老工具,而且这个智能安装优势太高了.

非理想解决方案:Git钩子

另一种方法是添加一个post-mergegit钩子.

问题是该解决方案是存储库的本地解决方案,无法轻松共享.npm …

javascript node.js npm package.json

18
推荐指数
2
解决办法
2044
查看次数

发布创建和发布之间的 Github Action 不同

由于Github Release s 实际上是一个Git Tag s,我想package.json在有新的 Release (和标签)时使用Github Action自动升级我的版本。

我知道我需要触发 a job on: release,但是根据Github Actions 文档,我不知道我是否需要触发 when createdpublished, both or all?

Github 说:

注意:发布release不会触发该事件draft

我创建了两个管道:一个on: release, type: created和一个on: release, type: published

然后我创建了一个draft版本,然后我发布了它。

只有published管道触发,而且是在我发布版本的时候。

versioning git-tag npm package.json github-actions

18
推荐指数
2
解决办法
2416
查看次数

尚未设置“mode”选项,webpack 将回退到该值的“生产”。“浏览器”字段不包含有效的别名配置

项目目录结构

在此输入图像描述

以下是webpack配置文件。

webpack.config.client.js

const path = require('path');
const webpack = require('webpack');
const CURRENT_WORKING_DIR = process.cwd();

const config = {
  name: 'browser',
  mode: 'development',
  // mode: 'production',
  devtool: 'eval-source-map',
  entry: [
    'webpack-hot-middleware/client?reload=true',
    path.join(CURRENT_WORKING_DIR, 'client/main.js'),
  ],
  output: {
    path: path.join(CURRENT_WORKING_DIR, '/dist'),
    filename: 'bundle.js',
    publicPath: '/dist/',
  },
  module: {
    rules: [
      {
        test: /\.jsx?$/,
        exclude: /node_modules/,
        use: ['babel-loader'],
      },
      // To bundle image assets so that other JS code can also access
      // and load it other than the component …
Run Code Online (Sandbox Code Playgroud)

nodemon webpack package.json webpack-dev-server webpack-4

18
推荐指数
2
解决办法
5万
查看次数

检查项目基于哪个 NextJs 版本

我正在开发 NextJs 项目,我想知道安装了哪个 NextJs 版本。我可以在哪里检查?

version command-line-interface reactjs package.json next.js

18
推荐指数
2
解决办法
4万
查看次数

npm glob pattern不匹配子目录

在我package.json,我有一个**/*Test.js用于匹配文件的脚本块.运行时npm,它们与子目录不匹配多个级别.直接在命令行上执行时,它们按预期工作.

任何人都可以解释发生了什么,并提供解决方法或解决方案?

package.json

{
  "name": "immutable-ts",
  "scripts": {
    "test": "echo mocha dist/**/*Test.js",
  }
}
Run Code Online (Sandbox Code Playgroud)

执行

% npm run test

> immutable-ts@0.0.0 test:unit .../immutable-ts
> echo mocha dist/**/*Test.js

mocha dist/queue/QueueTest.js dist/stack/StackTest.js

% echo mocha dist/**/*Test.js

mocha dist/queue/QueueTest.js dist/stack/StackTest.js dist/tree/binary/BinaryTreeTest.js

% ls dist/**/*                                                                                                                                                                                          

dist/collections.js  dist/queue/QueueTest.js  dist/tree/binary/BinaryTree.js      dist/immutable.js.map        dist/stack/Stack.js.map             dist/tree/binary/BinaryTreeTest.js.map
dist/immutable.js    dist/stack/Stack.js      dist/tree/binary/BinaryTreeTest.js  dist/queue/Queue.js.map      dist/stack/StackTest.js.map
dist/queue/Queue.js  dist/stack/StackTest.js  dist/collections.js.map             dist/queue/QueueTest.js.map  dist/tree/binary/BinaryTree.js.map
Run Code Online (Sandbox Code Playgroud)

mocha.js node.js npm package.json

17
推荐指数
1
解决办法
4888
查看次数

Node.js项目没有package.json

没有package.json的node.js项目可以吗?我在互联网上看到的都是package.json

没有package.json会有什么影响?

package.json是如何创建的?它是自动创建的吗?我想知道为什么我没有package.json

javascript node.js package.json

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

从凉亭到npm并使用main-bower-files

当凉亭慢慢"关闭"时,我发现很难从凉亭转移到npm.我设法下载了DEV软件包,但我似乎无法弄清楚如何使用等同于'main-bower-files'的npm.我找到了类似'main-npm-files'的东西但是没有办法使用"覆盖"方法,类似于bower使用的方法,指出应该复制哪些文件.

有人可以指导我如何做到这一点?如果您需要我粘贴我的package.json,请告诉我.

npm bower package.json main-bower-files

17
推荐指数
1
解决办法
2354
查看次数