簡體   English   中英

將Redux-router與Polymer 3應用程序一起使用

[英]Use Redux-router with polymer 3 app

聚合物應用程序正在使用redux存儲應用程序的狀態。 想法是也將所有路由都存儲在狀態中(請參見下圖)。 我想為此使用redux-router,但是當我嘗試將庫導入到我的應用程序時,開始就已經遇到了問題。

在此處輸入圖片說明

我導入的代碼如下所示:

import { createStore, compose as origCompose, applyMiddleware, combineReducers } from 'redux';
import thunk from 'redux-thunk';
import { lazyReducerEnhancer } from 'pwa-helpers/lazy-reducer-enhancer';
import {ReduxRouter} from '../node_modules/redux-router/src/ReduxRouter.js'



import app from './reducers/app.js';
import route from './reducers/route.js';
import user from './reducers/user.js';
import events from './reducers/events.js';

我收到此導入的錯誤是:

意外令牌=

如果我嘗試這樣導入:

import {ReduxRouter} from 'redux-router';

我得到:

未捕獲到的SyntaxError:所請求的模塊'../../node_modules/redux-router/lib/index.js'不提供名為'ReduxRouter'的導出

而如果:

import {ReduxRouter} from '../node_modules/redux-router/src'

然后:

未捕獲到的SyntaxError:意外的令牌導出

該問題可以在啟動劑聚合物3應用程序中重現。 或者,我認為,在任何聚合物應用中。

所以:

  1. 什么是正確的進口方式?
  2. 如果我只需要在狀態中存儲所有路由和歷史記錄,就可以在聚合物應用程序中使用redux-router(不做任何反應)嗎?
  3. 我還有什么其他選擇。 你知道有什么好的圖書館嗎?

1.)嘗試:

    import 'redux-router';

如果npm軟件包具有默認導出,則應允許您在組件中引用它。 如果沒有,請嘗試在index.html的末尾將其導入,例如:

    <script src="node_modules/redux-router/dist/ReduxRouter.js"></script>
    ...
    </body>

注意: / dist /不是/ src /

僅供參考,請確保您以分號結束導入聲明。 你寫了:

    import { lazyReducerEnhancer } from 'pwa-helpers/lazy-reducer-enhancer';
    import {ReduxRouter} from '../node_modules/redux-router/src/ReduxRouter.js'

您的最后一行需要用分號(可能是錯字)。

2.)是的,有可能。

3.)查看pwa-starter-kit-專門研究Polymer組如何包含Redux和pwa-helpers / router.js進行路由...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM