在一个create-react-app打字稿项目中,我尝试编写此代码只是为了快速测试一些内容:
// experiment.test.ts
it('experiment', () => {
console.log('test');
});
Run Code Online (Sandbox Code Playgroud)
但这给了我以下错误,下面是一个红色的波浪形it:
提供“ --isolatedModules”标志时,所有文件都必须是模块。
但是,如果我将文件更改为以下文件,那么一切似乎都很好(当然,除了未使用的导入外):
// experiment.test.ts
import { Component} from 'react'; // literally anything, don't even have to use it
it('test', () => {
console.log('test');
});
Run Code Online (Sandbox Code Playgroud)
为什么?这是怎么回事 --isolatedModules实际上是什么意思?
我在网上尝试了很多方法,但到目前为止没有任何效果。
src/pages/api/proxy/[...slug].js):import { createProxyMiddleware } from 'http-proxy-middleware';
// Create proxy instance outside of request handler function to avoid unnecessary re-creation
const apiProxy = createProxyMiddleware({
target: 'http://localhost:5000',
changeOrigin: true,
pathRewrite: { [`^/api/proxy`]: '' },
secure: false,
});
export default function (req, res) {
apiProxy(req, res, (result) => {
if (result instanceof Error) {
throw result;
}
throw new Error(`Request '${req.url}' is not proxied! We should never reach here!`);
});
};
Run Code Online (Sandbox Code Playgroud)
给我这样的错误:
TypeError: Object(...) is not a function …Run Code Online (Sandbox Code Playgroud) 这里是 Docker 新手。我的 Nextjs 应用程序遇到了令人困惑的障碍,该应用程序与 API 和数据库容器一起在自己的容器中运行。
我的 Nextjs 应用程序使用 API 容器中的数据。这在服务器端效果很好:Nextjs 应用程序按其应有的方式解析容器主机名。然而,在客户端,应用程序崩溃了,因为容器主机名对浏览器来说没有任何意义(我认为?)。我对如何处理这件事感到相当迷失。有想法吗?
这是我的 Docker Compose 文件,它有助于阐明我的问题。请注意,我通过以下environment字段将主机名传递给 Nextjs 应用程序:
version: '3.8'
services:
# Redis
redis:
image: redis
command: redis-server --requirepass ${REDIS_PASSWORD} --bind redis
ports:
- "6379:6379"
networks:
- mywebappio
# Data Processing Service
mywebapp-api:
container_name: mywebapp-api
restart: always
build:
context: packages/dps-api
dockerfile: Dockerfile
command: npm run dev # npm start prod
working_dir: /usr/src/dps-api
env_file:
- .env
volumes:
- ./packages/dps-api:/usr/src/dps-api
ports:
- "5000:5000"
networks:
- mywebappio
depends_on:
- redis …Run Code Online (Sandbox Code Playgroud)