小编ius*_*ius的帖子

在Heroku上部署Nodej无法提供位于子文件夹中的静态文件

我正在使用Heroku部署NodeJs应用程序.除了提供静态文件的小问题外,一切正常.

我有以下配置

app.use(express.static(__dirname + '/htdocs'));
Run Code Online (Sandbox Code Playgroud)

它工作正常,除非我尝试提供位于子文件夹中的静态文件.

www.example.com/bar.js //这将提供文件/htdocs/bar.js

www.example.com/foo/bar.js //找不到文件/htdocs/foo/bar.js

我忘了说在我的本地环境中一切正常,可能是heroku的东西,但我找不到原因.以前有人遇到过这个问题吗?解决方案?

谢谢!

heroku static-files node.js express

17
推荐指数
3
解决办法
9653
查看次数

Eslint - 超出最大调用堆栈大小

在React/Webpack项目中工作,我开始遇到eslint库的问题.

使用npm下载eslint包,它用于使用webpack preLoader验证项目.

        preLoaders: [{
            test: /\.jsx?$/,
            loaders: [ 'eslint' ],
            include: path.resolve(__dirname, 'app')
        }]
Run Code Online (Sandbox Code Playgroud)

它曾经工作正常,直到最近我试图将同一个项目克隆到另一个文件夹.安装依赖项"npm install"并启动项目"npm start"后,出现以下错误.

    ERROR in ./main.view.jsx
Module build failed: RangeError: Maximum call stack size exceeded
    at keys (native)
    at Referencer.Visitor.visitChildren (project/node_modules/eslint/node_modules/escope/node_modules/esrecurse/esrecurse.js:78:24)
    at Referencer.Visitor.visit (project/node_modules/eslint/node_modules/escope/node_modules/esrecurse/esrecurse.js:112:14)
    at Referencer.Visitor.visitChildren (project/node_modules/eslint/node_modules/escope/node_modules/esrecurse/esrecurse.js:93:26)
    at Referencer.Visitor.visit (project/node_modules/eslint/node_modules/escope/node_modules/esrecurse/esrecurse.js:112:14)
    at Referencer.Visitor.visitChildren (project/node_modules/eslint/node_modules/escope/node_modules/esrecurse/esrecurse.js:93:26)
    at Referencer.Visitor.visit (project/node_modules/eslint/node_modules/escope/node_modules/esrecurse/esrecurse.js:112:14)
    at Referencer.Visitor.visitChildren (project/node_modules/eslint/node_modules/escope/node_modules/esrecurse/esrecurse.js:88:38)
    at Referencer.Visitor.visit (project/node_modules/eslint/node_modules/escope/node_modules/esrecurse/esrecurse.js:112:14)
    at Referencer.Visitor.visitChildren (project/node_modules/eslint/node_modules/escope/node_modules/esrecurse/esrecurse.js:93:26)
 @ ./app.jsx 17:26-57
Run Code Online (Sandbox Code Playgroud)

奇怪的是,旧的项目安装仍然有效.

问题必须在node_modules文件夹中的某处,因为当我将模块从旧安装复制到新安装时,项目突然起作用.我在两个项目上都做了"npm list --depth = 0",两者都有相同的包和版本.为什么一个人在工作而另一个人没有?

我猜问题是在eslint包中,因为当我删除preLoader时它再次起作用.

我真的很困惑.有人之前有过这个问题吗?

我的main.view.jsx看起来像那样

import React from 'react';
export default class MainView …
Run Code Online (Sandbox Code Playgroud)

javascript node.js reactjs eslint webpack

6
推荐指数
1
解决办法
2574
查看次数

标签 统计

node.js ×2

eslint ×1

express ×1

heroku ×1

javascript ×1

reactjs ×1

static-files ×1

webpack ×1