网站搜索

express - 无法在 NextJs + ExpressJs 中使用 TypeScript 和 webpack

我想使用 TypeScript 设置 ExpressJs,以便使用 InversifyJS 的 IOC,并结合 es6 的 Nextjs。我还想使用 webpack 进行打包。由于我必须在 server.ts 中导入 Next 以进行服务器端渲染,所以我也为 Nextjs 配置了 TypeScript,但我希望 client 文件夹中的 .js 和 .jsx 文件可以使用 es6 语法。

但是在编译 nextjs 代码时出了问题。(当我在 server.ts 中不使用 next 时,它可以正常工作)

webpack.config.js

const path

阅读更多 →

reactjs - 将 React Typescript 应用程序转换为 Nextjs

我刚接触 Nextjs,我已经使用 Reactjs + Typescript 构建了一个 web 应用程序,我想将其转换为 Nextjs。我对文件结构以及各个文件应该放在哪里以及安装部分感到困惑。当前的 web 应用程序(Reactjs 搭配 Typescript)有一个数据库(Postdb)和以下功能:

  1. 创建新笔记
  2. 对便条发表评论
  3. 喜欢和不喜欢这条笔记。

有没有办法让我顺利地把这个现有项目转换到 Next.js?

这也是我的文件结构

(New-App) * node_modules * public

阅读更多 →

reactjs - NextJS:将新的查询字符串值推送到现有的 asPath 或更新现有的查询字符串

我有点不太明白 NextJS 路由系统是如何工作的:

我有按类别分类的文章,可以是:

Medical Charity Wedding Funeral

我有一个导航栏,用户可以按类别显示文章,也可以按关键字搜索。类别功能运行得非常好。

这是我的导航栏的样子:

这意味着如果用户点击 全部,我们将显示所有文章:

情景如下:

reactjs - 为什么在 NextJS 中 setState 在这种情况下不起作用?

大家好! 我遇到了一个问题——在我的 NextJS + TS 应用中 setState 无法工作。 我尝试通过 ReactHooks 使用状态,但没有任何效果,把组件改成类组件也没有效果。 我尝试在一个新创建的 CRA 应用中运行这个组件(没有 TS),在那里一切正常。

该组件通过 props 接收数组并将其渲染为按钮。 状态包含两个属性,currentActive 和 selected。 当用户点击按钮时,第一个函数会被触发,它应该更新 this.state.currentActive 然后是第

阅读更多 →

typescript - Nextjs 路径名中的查询参数被解码

我们正在从一个 API 获取一些数据,其中我们使用 URL 在应用程序中进行导航。在我们的 Link 组件中,我们传递 URL 的方式是 <Link href={{ pathname: url , someOtherProperty }} />,其中 URL 看起来像 /path-to-page?query=value,但是当我在客户端查看时,URL 被返回为 /path-to-page%3Fquery=value。当我们不给 href 传递对象,而是像 <Link href={url} /

阅读更多 →

reactjs - 如何让 Nextjs 在保存时显示 TypeScript 类型错误

我正在使用一个 Nextjs Typescript 项目,并且发现类型错误不会像其他错误那样阻止应用程序执行,这对我来说是个问题,但更大的问题是 TypeError 发生在构建时,通常在需要部署时才发现有类型错误。

有没有办法在开发时让 typescript 错误 阻止应用程序执行?我应该使用什么配置来实现这一点?

那是我的tsconfig.json

{ "compilerOptions": { "target": "es2020", "lib": [ "dom", "dom.iterable", "esnext" ], "allowJs": true, "skipLibCheck": true,

阅读更多 →

next.js - 在 Nx 工作区中构建 NextJS 应用时 - 出现错误:无法找到模块 'typescript'

在使用 Next JS 应用创建新的 @nrwl/workspace 时,我收到错误 Error: Cannot find module 'typescript'。有人遇到同样的问题吗?

步骤 -

  1. 创建一个新的 nx 工作区
  2. 使用 NextJS 预设创建一个新应用
  3. 使用 nx run <app-name>:build 构建应用
  4. 从 dist/apps/<app-name> 生成镜像,或者只是将 dist 复制到某个地方
  5. 运行 yarn 或 npm install
  6. 安装模块后 - 使用 yarn start 启动应用程序

出现的错误

Error: Cannot find module 'typescript' Require stack: - E:\projects\

阅读更多 →

typescript - 我如何在 NextJs 应用中为单个 JSON 文件禁用 resolveJsonModule?

我正在构建一个 Next.js 应用程序,并使用 Vercel 进行部署。一切都运行得很好,直到我最近对一个大型 JSON 文件进行了一些修改,这使其大小增加了大约 20%。大小的增加似乎打破了某种限制,现在我遇到了 webpack 5 错误,这似乎是由于 TypeScript 类型解析引起的。

我正通过 import 直接导入 JSON 文件。根据我所能收集的信息,似乎 tsconfig.json 中的 resolveJsonModule 编译选项负责告诉 webpack 尝试即时解析 JSON 文件的类型,这样它就可以检查我对 JSON 文件的操作是否合理。

其实这是一个相当简单的文件——它只是一个相当简单的 FoodItem 对象数组,如下所示(示例说明):

import allFoodOriginal from '../data/all-food-data.json' interface FoodData { Calories: string, Kilojoules: string } interface F

阅读更多 →

reactjs - 如何将带有自定义属性的 Nextjs 组件作为 Children 传递

要向我的组件添加一个属性 Auth。我已经创建了一个接口

interface AuthAppProps extends Omit<AppProps, "Component"> { Component: AppProps["Component"] & { Auth: boolean }; }

这样我就可以表演

const App: React.FC<AuthAppProps> = (props) =>{ const { Component, pageProps: { session, ...pageProps }, } = props; return ( <SessionProvider session={session}> {Component.Auth ? ( <AuthGuard>

阅读更多 →

reactjs - 如何在使用 NextJS、TypeScript 和 useContext 钩子的 React 中将 JWT 正确存储在 cookie 中

用户已经设置并且在所有页面上保持,但当浏览器窗口刷新时,用户会被注销。不确定问题是否出在我设置 cookie 的方式上,任何建议或替代方案都非常欢迎。

这是 UserContext 文件:

import { destroyCookie } from "nookies"; import { setCookie } from "nookies"; import React from "react"; // import { useCookies } from "react-cookie" import cookie from "cookie"; import { Person, tokenAuth } from "../auth"; import { LoginFormValues } from "../components/Auth/LoginForm&qu

阅读更多 →