小编Gat*_*ico的帖子

如何在React应用程序中的typescript文件中导入js模块(带绝对路径)?

我正在我的React应用程序中集成typescript,它有大量的代码.我有一些应用程序级别的HOC,我将其应用于React组件:

import React from 'react';
import HOC1 from 'app/hocs/hoc1';
import compose from 'recompose/compose;

class MyComponent from React.Component {
     ...component stuff...
}

export default compose(HOC1())(MyComponent);
Run Code Online (Sandbox Code Playgroud)

但是现在我在我的应用程序中添加了typescript,每当我导入时

import HOC1 from 'app/hocs/hoc1';
Run Code Online (Sandbox Code Playgroud)

它说

TS2307: Cannot find module 'app/hocs/hoc1'.
Run Code Online (Sandbox Code Playgroud)

我不想为所有HOC添加类型定义.什么是解决方案以及为什么我收到此错误?

[编辑]我使用baseUrltsconfig为好.我的文件夹结构是

/Project/configs/tsconfig
/Project/src/app/hocs
Run Code Online (Sandbox Code Playgroud)

在tsconfig,我已经给了baseUrl../src通过文档.

另一个Edit 和我的webpack配置看起来像:

    {
        test: /\.(t|j)sx?$/,
        loader: 'happypack/loader?id=jsx-without-proptypes',
        include: [
          path.resolve(__dirname),
          path.resolve(__dirname, '../src'),
        ],
      },
Run Code Online (Sandbox Code Playgroud)

整个webpack配置看起来像

const config = {
  context: path.resolve(__dirname, '../src'),

  mode: NODE_ENV,

  optimization: {
    splitChunks: false,
    nodeEnv: …
Run Code Online (Sandbox Code Playgroud)

typescript reactjs webpack

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

反应警告:道具类型失败:提供的“对象”类型的道具无效

我收到警告“警告:道具类型失败:Object提供给的类型无效,预期实例为bound checkType。”

这是我的道具:

FieldTable.propTypes = {
    rawData: PropTypes.instanceOf(PropTypes.object).isRequired,
    percentCols: PropTypes.arrayOf(PropTypes.string).isRequired,
    specialColNames: PropTypes.instanceOf(PropTypes.object).isRequired,
    scenarioHeaders: PropTypes.instanceOf(PropTypes.object),
    headerHierarchies: PropTypes.arrayOf(PropTypes.object).isRequired
};
Run Code Online (Sandbox Code Playgroud)

它所指的“绑定检查类型”是什么,我应该如何验证我的对象道具以避免此警告?对象本身是从异步调用接收的 JSON 对象,并在其他组件中生成。例如,rawData 对象来自一个组件,该组件允许用户上传 Excel 电子表格,然后将电子表格解析为 JSON 对象。不知道这是否是有用的信息。

感谢您提供任何帮助,尤其是此问题可能引起的任何更深入的讨论。

reactjs eslint react-proptypes eslint-config-airbnb react-props

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