ozon
发表于 2022-5-31 15:54:49
李恒道 发表于 2022-5-31 15:53
试一下呗
我对react研究不深
按道理instance也是有onchange的
回复好快,大佬不用上班吗
李恒道
发表于 2022-5-31 16:17:36
ozon 发表于 2022-5-31 15:54
回复好快,大佬不用上班吗
上班啊
公司给我工资低
所以比较轻松
挖资本主义墙角~
cxxjackie
发表于 2022-5-31 22:45:13
ozon 发表于 2022-5-31 15:51
https://wwm.lanzouq.com/ioVBA05oqnfe
大佬这种情况怎么处理,一个输入框,没有监听器
尝试了这个,
这样试试:
const prop = Object.keys(ele).find(p => p.startsWith('__reactInternalInstance'));
ele.pendingProps.onChange(evt);
ozon
发表于 2022-6-1 15:22:31
cxxjackie 发表于 2022-5-31 22:45
这样试试:
{:4_93:}感谢大佬,pendingProps里面没有onChange这个函数,昨天尝试了下,这句可以成功输入
const prop = Object.keys(ele).find(p => p.startsWith('__reactInternalInstance'));
ele._wrapperState.onChange(evt);
,但是报错
VM697 next.js:12 Uncaught Invariant Violation: ReactUpdates.asap: Can't enqueue an asap callback in a context whereupdates are not being batched.
at r (https://g.alicdn.com/taefed/common-media-selector/0.6.100??lib/polyfill.min…js,lib/ReactRouterRedux.min.js,lib/redux-thunk.min.js,lib/next.js:12:26964)
at Object.l (https://g.alicdn.com/taefed/common-media-selector/0.6.100??lib/polyfill.min…js,lib/ReactRouterRedux.min.js,lib/redux-thunk.min.js,lib/next.js:11:24035)
at m.a (https://g.alicdn.com/taefed/common-media-selector/0.6.100??lib/polyfill.min…js,lib/ReactRouterRedux.min.js,lib/redux-thunk.min.js,lib/next.js:10:25814)
at <anonymous>:6:25
r @ VM697 next.js:12
l @ VM697 next.js:11
a @ VM697 next.js:10
(anonymous) @ VM750:6
现在打算将就着用了,在找跳过报错的方法
cxxjackie
发表于 2022-6-1 20:19:37
ozon 发表于 2022-6-1 15:22
感谢大佬,pendingProps里面没有onChange这个函数,昨天尝试了下,这句可以成功输入
,但是报错
输出ele看一下吧。
ozon
发表于 2022-6-2 14:21:04
本帖最后由 ozon 于 2022-6-2 14:38 编辑
cxxjackie 发表于 2022-6-1 20:19
输出ele看一下吧。
是这样的console.log(ele)
m {_currentElement: {…}, _tag: "input", _namespaceURI: "http://www.w3.org/1999/xhtml", _renderedChildren: null, _previousStyle: null, …}
_currentElement: {$$typeof: Symbol(react.element), type: "input", key: "input", ref: "input", props: {…}, …}
_domID: 39
_flags: 1
_hostContainerInfo: {_topLevelWrapper: p, _idCounter: 250, _ownerDocument: document, _node: div#container, _tag: "div", …}
_hostNode: input
_hostParent: m {_currentElement: {…}, _tag: "span", _namespaceURI: "http://www.w3.org/1999/xhtml", _renderedChildren: {…}, _previousStyle: null, …}
_mountImage: null
_mountIndex: 0
_namespaceURI: "http://www.w3.org/1999/xhtml"
_previousStyle: null
_previousStyleCopy:
textIndent: undefined
__proto__: Object
_renderedChildren: null
_rootNodeID: 34
_tag: "input"
_topLevelWrapper: null
_wrapperState:
controlled: true
initialChecked: undefined
initialValue: ""
listeners: Array(1)
onChange: ƒ ()
valueTracker: {getValue: ƒ, setValue: ƒ, stopTracking: ƒ}
__proto__: Object
__proto__:
createChild: ƒ (e,t,n)
getHostNode: ƒ ()
getPublicInstance: ƒ ()
mountChildren: ƒ (e,t,n)
mountComponent: ƒ (e,t,n,r)
moveChild: ƒ (e,t,n,r)
receiveComponent: ƒ (e,t,n)
removeChild: ƒ (e,t)
unmountChildren: ƒ (e)
unmountComponent: ƒ (e)
updateChildren: ƒ (e,t,n)
updateComponent: ƒ (e,t,n,r)
updateMarkup: ƒ (e)
updateTextContent: ƒ (e)
_createContentMarkup: ƒ (e,t,n)
_createInitialChildren: ƒ (e,t,n,r)
_createOpenTagMarkupAndPutListeners: ƒ (e,t)
_mountChildAtIndex: ƒ (e,t,n,r,o,a)
_reconcilerInstantiateChildren: ƒ (e,t,n)
_reconcilerUpdateChildren: ƒ (e,t,n,r,o,a)
_unmountChild: ƒ (e,t)
_updateChildren: ƒ (e,t,n)
_updateDOMChildren: ƒ (e,t,n,r)
_updateDOMProperties: ƒ (e,t,n)
constructor: ƒ m(e)
__proto__: Object
ozon
发表于 2022-6-2 14:41:15
本帖最后由 ozon 于 2022-6-2 14:43 编辑
cxxjackie 发表于 2022-6-1 20:19
输出ele看一下吧。
console.log(ele._currentElement)https://pic.rmb.bdstatic.com/bjh/ae9e0104970ffc77b3160326e9c98348.png
cxxjackie
发表于 2022-6-2 20:38:11
ozon 发表于 2022-6-2 14:41
console.log(ele._currentElement)
这个感觉是对的,你试试_currentElement.props.onChange吧。
wwwwwllllk
发表于 2022-6-14 20:08:01
都是大佬
李恒道
发表于 2022-6-14 21:48:55
wwwwwllllk 发表于 2022-6-14 20:08
都是大佬
主要cxxjackie牛逼
开发指南很多的疑难杂症他指点的