Coder Social home page Coder Social logo

多层嵌套,第一层应用A版本是1.0.0-rc.4,子应用B版本是0.8.11,子应用B中嵌套了一个其他子应用C,挡在A中访问B中的C页面,默认不管路由怎么切换都是访问的C中默认路由,不会切换 about micro-app HOT 6 OPEN

qinxiaozhu avatar qinxiaozhu commented on July 25, 2024
多层嵌套,第一层应用A版本是1.0.0-rc.4,子应用B版本是0.8.11,子应用B中嵌套了一个其他子应用C,挡在A中访问B中的C页面,默认不管路由怎么切换都是访问的C中默认路由,不会切换

from micro-app.

Comments (6)

bailicangdu avatar bailicangdu commented on July 25, 2024

多层嵌套路由模式最好保持一致,否则容易导致混乱

from micro-app.

bailicangdu avatar bailicangdu commented on July 25, 2024

按描述渲染的逻辑是没问题的,只有C无法切换路由不太应该,大概率还是路由没匹配上

from micro-app.

qinxiaozhu avatar qinxiaozhu commented on July 25, 2024

应为B应用是0.x版本的 是不是默认就是native路由模式,因为用了keep-alive,所以在B的子应用中用了
// 创建之前更新对应的路由
const regx = new RegExp(${window.__MICRO_APP_BASE_ROUTE__}(\/.*)$)
// 匹配对应的正则
const match = window.location.pathname.match(regx)
// 是否匹配上对应的路由
if (match && match.length) {
// 替换对应的路由
app.$router.replace({
path: match[1],
query: {
...getQueryObject()
}
})
}
在C中获取的路由 window.location.pathname每次都是首页的地址,从而导致又重定向到了首页

from micro-app.

bailicangdu avatar bailicangdu commented on July 25, 2024

0.x和1.0差一个大版,相互嵌套可能会出问题,最好保持版本一致

from micro-app.

qinxiaozhu avatar qinxiaozhu commented on July 25, 2024

是需要保持版本一致 路由模式一致么

from micro-app.

bailicangdu avatar bailicangdu commented on July 25, 2024

是需要保持版本一致 路由模式一致么

是的

from micro-app.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.