首页 > 解决方案 > 在 Typescript 中转换 React Native 导出文件

问题描述

如何将此 .js 文件转换为 Typescript 文件?

import * as Colors from './colors';
import * as Spacing from './spacing';
import * as Typography from './typography';
import * as Mixins from './mixins';

export { Typography, Spacing, Colors, Mixins };

谢谢

编辑1:我正在尝试修复以下错误:

找不到模块“_styles”或其相应的类型声明。

尝试将文件导入另一个文件时

import {Colors,Typography,Mixins} from '_styles';

它有效,但显示上述警告。我有一个设置,允许我在没有完整路径的情况下导入文件,但使用打字稿时,它会显示警告。

编辑2:

我在 .babelrc 中有以下设置

    {
  "plugins": [
    [
      "module-resolver",
      {
        "cwd": "babelrc",
        "root": ["./src"],
        "extensions": [".js", ".ios.js", ".android.js", ".ts", ".tsx", ".json"],
        "alias": {
          "_assets": "./src/assets",
          "_components": "./src/components",
          "_atoms": "./src/components/atoms",
          "_molecules": "./src/components/molecules",
          "_organisms": "./src/components/organisms",
          "_navigations": "./src/navigations",
          "_scenes": "./src/scenes",
          "_services": "./src/services",
          "_styles": "./src/styles",
          "_utils": "./src/utils",
          "_i18n": "./src/i18n"
        }
      }
    ]
  ]
}

标签: javascriptreactjstypescriptreact-native

解决方案


从 TS 3.8 开始,新语法引入了export * as ns from '...'

这个怎么用?

export * as Colors from './colors';
export * as Spacing from './spacing';
export * as Typography from './typography';
export * as Mixins from './mixins';

推荐阅读