我正在构建一个组件,该组件将动态列出接下来的三个会议日期。在组件内部,当我console.log时,props变量将其映射到数组中的每个字符。控制台日志中的第一行是getMeetingDates函数返回的内容
这是渲染
render() {
return (
<div class={style.sidebar}>
<div className="sidebar-sections">
<h3>Next Meeetings</h3>
{this.getMeetingDates().map(date => <MeetingDates {...date} />)}
</div>
</div>
);
}
Run Code Online (Sandbox Code Playgroud)
难道我做错了什么?
我在这里面对这个配置https://github.com/developit/zero-to-preact/blob/master/webpack.config.js
plugins: [
['transform-react-jsx', { pragma: 'h' }]
]
Run Code Online (Sandbox Code Playgroud)
文档说
编译
string,默认为React.createElement.
替换编译JSX表达式时使用的函数.
请注意,从React v0.12开始,不推荐使用@jsx React.DOM编译指示
但没有关于'h'意味着什么的线索!它是什么?
是否可以检查对象是否是 JSX 可能是某些执行此操作的函数。我对 React 和 Preact 感兴趣。
var x = <App/>
var y = <div>xxx</div>
Run Code Online (Sandbox Code Playgroud)
我想出了这个:
function isJSX(x) {
return typeof x.props === 'object' && x.props !== null && typeof x.type !== 'undefined';
}
Run Code Online (Sandbox Code Playgroud)
有没有更好的办法?我不确定其他库,如 HyperApp 和 Preact。这个功能可靠吗?输出来自 Babel。是否有规范显示 JSX 转译器的输出应该是什么?
这是我的测试笔
你如何在 React 的quill.js中关闭拼写检查?
我发现这个 GitHub 页面显示了如何在普通 JavaScript 中禁用 quill 的拼写检查器:
const quill = new Quill('#editor-container')
quill.root.setAttribute('spellcheck', false)
Run Code Online (Sandbox Code Playgroud)
但是,我看不到如何使用 React 组件来实现这一点。
我的 React 组件(实际上是 Preact):
const quill = new Quill('#editor-container')
quill.root.setAttribute('spellcheck', false)
Run Code Online (Sandbox Code Playgroud)