小编Max*_*pov的帖子

React-pdf 无法在模块外部使用 import 语句

我用来react-pdf通过 CRA 在 React 中渲染 PDF,然后像这样导入它:

import { Document, Page } from "react-pdf/dist/esm/entry.webpack";
Run Code Online (Sandbox Code Playgroud)

现在,我尝试使用以下 webpack 配置来实现 SSR:

// webpack.server.conf

const path = require("path");
const webpackNodeExternals = require("webpack-node-externals");

module.exports = {
  target: "node",
  entry: "./server/index.tsx",
  output: {
    filename: "bundle.js",
    path: path.resolve(__dirname, "build-server"),
  },
  resolve: {
    extensions: [".ts", ".tsx", ".js"],
    modules: [path.resolve(__dirname, "src"), "node_modules"],
  },
  externals: [webpackNodeExternals()], // excludes node modules in Webpack
  module: {
    rules: [
      {
        test: /\.tsx?$/,
        loader: "ts-loader",
        options: {
          configFile: "tsconfig.server.json",
        },
      },
      // we …
Run Code Online (Sandbox Code Playgroud)

reactjs webpack server-side-rendering webpack-4 react-pdf

8
推荐指数
0
解决办法
1632
查看次数

Nextjs css 闪烁

我正在使用 Material ui 和 nextjs 构建一个 React 应用程序。我正在使用<Autocomplete />由 Material UI 提供的组件,并用我自己的样式覆盖它的一些样式,如下所示:

<Autocomplete
  classes={{
    root: `${styles[`search__autocomplete`]} ${
      styles[`search--${variant}__autocomplete`]
    }`,
    inputRoot: `${styles[`search__autocomplete-input`]} ${
      styles[`search--${variant}__autocomplete-input`]
    }`
  }} 
/>
Run Code Online (Sandbox Code Playgroud)

variant是一个 prop,它被传递给组件,并且是一个变量,它从css 模块styles导入:。import styles from "Search.module.sass"

现在,当我在本地进行此操作时,一切看起来都很棒:

预期的

但是,当我通过将其部署到生产环境后,next build && next export我开始遇到“闪烁”效果,大约 1/3 秒时我的页面如下所示:

在此输入图像描述

我的猜测是,这可能与 nextjs 将我的 css 导出到生产中的多个文件有关:

    <link
      rel="preload"
      href="/_next/static/css/4dcd7fa805fb41261f08.css"
      as="style"
    />
    <link
      rel="stylesheet"
      href="/_next/static/css/4dcd7fa805fb41261f08.css"
      data-n-g=""
    />
    <link
      rel="preload"
      href="/_next/static/css/a23cf79bceae4047fddb.css"
      as="style"
    />
    <link
      rel="stylesheet"
      href="/_next/static/css/a23cf79bceae4047fddb.css"
      data-n-p=""
    />
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

reactjs material-ui css-modules next.js

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

Rails 在没有模型的控制器中未初始化常量 MODEL

我在 Admin 命名空间下使用 2 个操作创建了语言控制器:索引和切换(由“rails g”创建),但是当我尝试加载管理/语言/索引时,出现以下错误:

Admin::LanguageController#index 中的名称错误

未初始化常量语言

看起来 Rails 正在寻找语言模型,是吗?如果我无意创建语言模型,我该如何解决它?

语言控制器.rb:

class Admin::LanguageController < ApplicationController
  def index
  end

  def toggle
  end
end
Run Code Online (Sandbox Code Playgroud)

model-view-controller ruby-on-rails

5
推荐指数
1
解决办法
1353
查看次数

如何将所有请求记录到 Mongoid 5 中的 rails 控制台?

使用 ActiveRecord 时,可以看到加载页面时执行的所有 SQL 查询。如何与 Mongoid 5 实现相同的目标?

ruby-on-rails mongodb mongoid

5
推荐指数
1
解决办法
3667
查看次数

打字稿和对象文字查找

问题的最小可重现示例

我有一个对象文字:

const map = (filter: Filter) => {
  return {
    [Filter.USERS]: {
      fetch: async () => getUsers(),
      set: setUsers,
    },
    [Filter.FIRMS]: {
      fetch: async () => getFirms(),
      set: setFirms,
    }
  }[filter];
Run Code Online (Sandbox Code Playgroud)

我的状态定义如下:

  const [firms, setFirms] = useState<Maybe<FirmsResponse>>(null);
  const [users, setUsers] = useState<Maybe<UsersResponse>>(null);
  const [filter, setFilter] = useState<Filter>(Filter.USERS)
Run Code Online (Sandbox Code Playgroud)

我想使用我的对象:

const currentFilter = map(filter);
const response = currentFilter.fetch();
currentFilter.set(response.data);
// ^^^^^^^^^^^^^^ Here I get a long TS error which boils down to:
// "Type 'UsersResponse' provides no match for the signature …
Run Code Online (Sandbox Code Playgroud)

javascript typescript reactjs

3
推荐指数
1
解决办法
438
查看次数

Yii使用SQLite使用外键创建表

我正在尝试使用这样的外键创建表(使用迁移)

public function safeUp()
{
    $this->createTable('tbl_category', array(
        'id'=>'pk',
        'title'=>'string NOT NULL',
        'url'=>'string NOT NULL UNIQUE'
    ));
    $this->addForeignKey('FK_category', 'tbl_product', 'category_id', 'tbl_category', 'id', 'CASCADE', 'NO ACTION');    
}
Run Code Online (Sandbox Code Playgroud)

它完全适用于MySQL,但现在我想使用SQLite,这个代码给出了一个错误,在SQLite中我无法将外键添加到现有表中,所以我查看了createTable方法的定义:

public integer createTable(string $table, array $columns, string $options=NULL)
Run Code Online (Sandbox Code Playgroud)

并尝试使用$optionsparam在那里添加我的外键,但它生成了这个:

CREATE TABLE 'tbl_category' (
    "id" integer PRIMARY KEY AUTOINCREMENT NOT NULL,
    "title" varchar(255) NOT NULL,
    "url" varchar(255) NOT NULL UNIQUE
)
CONSTRAINT FK_category
FOREIGN KEY tbl_product(category_id)
REFERENCES tbl_category(id)
ON DELETE CASCADE ON UPDATE NO ACTION
Run Code Online (Sandbox Code Playgroud)

显然,"CONSTRAINT ..."代码应该在这些括号内,但事实并非如此.那么如何创建这个外键呢?

sqlite activerecord yii

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