0
我找到了粘贴的代码,下面签入了我们的React/Typescript - JSX/TSX项目。它包含一个尚未解决的Git合并冲突。如何在React,Typescript项目中合并冲突有效
该代码构建(通过熔丝盒)并在浏览器中运行!
“transpiled”代码导致顶层元素被解析为我们组件的根元素,第二个元素(开始“.app-container”)被忽略。
看来,在某些情况下,通过TSX/JSX解释/解析/转码可以忽略git合并冲突。
我的问题是:这是如何工作的?这种行为是故意的吗?
export const App: SFC =() => (
<<<<<<< HEAD
<Provider store={window.uglySolution}>
<Router history={customHistory}>
<Switch>
<Route exact path='/' component={Welcome}/>
<Route exact path='/advice' component={PageLayout}/>
<Route exact path='/login' component={Login}/>
<Route exact path='/manage' component={ManageLayout}/>
</Switch>
</Router>
</Provider>
=======
<div className='app-container'>
<Provider store={window.uglySolution}>
<Router history={customHistory}>
<Switch>
<Route exact path='/' component={Welcome}/>
<Route exact path='/advice' component={PageLayout}/>
<Route exact path='/login' component={Login}/>
<Route exact path='/manage' component={ManageLayout}/>
</Switch>
</Router>
</Provider>
</div>
>>>>>>> f81b0b1b458e3d41f91faa2e726be6d88a35d9f8
);
如果不告诉别人,否则TSC是要干什么,最好忽略任何不好的代码,你可能有。这可能会发生,即使输入错误,这也会生成有效的代码。这是默认行为,但我不会指望它。解决你的冲突。 :) – toskv
也在这种情况下..我会假设合并文本从git只是在模板中结束..因为从tsc的角度来看文本 – toskv
@toskv - 我会如何让Typescript忽略“坏代码”(在这种情况下,您的“其他”声明)? – Lewis