小编Mik*_*yev的帖子

打字稿无法解析导入中的非相对路径

我有这样的项目结构

|--src
     |--app.component
                    |--index.ts
     |--home.component
                    |--index.ts
|--tsconfig.json
|--webpack.config.js
Run Code Online (Sandbox Code Playgroud)

我正在尝试在 app.component-index.ts 中执行以下操作

import { HomeComponent } from 'components/home.component'
Run Code Online (Sandbox Code Playgroud)

Typescript 找不到此模块并抛出

error TS2307: Cannot find module 'home.component'
Run Code Online (Sandbox Code Playgroud)

Typescript 文档接下来说:

对 moduleB 的非相对导入(例如源文件 /root/src/folder/A.ts 中的 import { b } from "moduleB")将导致尝试在以下位置查找“moduleB”:

/root/src/folder/moduleB.ts
/root/src/moduleB.ts
/root/moduleB.ts
/moduleB.ts 
Run Code Online (Sandbox Code Playgroud)

所以对于我的情况我希望它会像

/src/components/app.component/components/home.component
/src/components/components/home.component
/src/components/home.component
Run Code Online (Sandbox Code Playgroud)

提前致谢。PS 在我的 webpack.config 中,我已将 root.resolve 设置为 src 并且所有内容都正确。Typescript-loader 将错误打印到终端,但一切都已捆绑并正常工作

import typescript webpack

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

useReducer 调度后如何获取状态?

有没有办法在派送后获得更新的状态?

想象一下,我正在尝试编写一些从上下文中获取状态的钩子(其中值是 useReducer 的结果)根据状态分派动作并返回更新的一个:

const useHook = (state, dispatch) => {
    if (state.flag) {
        dispatch({
            type: `UNSET_FLAG`,
        })
    } else {
        dispatch({
            type: `SET_FLAG`,
        })
    }
}

const Foo = () => {
    const [state, dispatch] = useContext(MyContext);

    useHook(state, dispatch);

    return state.flag ? <Flagged /> : <Unflagged /> ;
}

Run Code Online (Sandbox Code Playgroud)

提前感谢您的任何意见和想法

PS 出于描述目的,这个例子只是我脑子里的第一个愚蠢的事情。

reactjs react-hooks

5
推荐指数
0
解决办法
323
查看次数

标签 统计

import ×1

react-hooks ×1

reactjs ×1

typescript ×1

webpack ×1