- Published on
第四周:You may not need a bundler for your NPM library
- Authors
- Name
- AgedCoffee
- @__middle__child
技术
You may not need a bundler for your NPM library 很多时候使用 tsc 已经可以满足打包的大部分场景没有必有用其他的打包器
const App = () => {
return <p>Hello React</p>
}
console.log(App())
// {
// $$typeof: Symbol(react.element),
// "type": "p",
// "key": null,
// "ref": null,
// "props": {
// "children": "Hello React"
// },
// "_owner": null,
// "_store": {}
// }
console.log(<App />)
// {
// $$typeof: Symbol(react.element),
// "key": null,
// "ref": null,
// "props": {},
// "type": () => {…},
// "_owner": null,
// "_store": {}
// }
Each instance allocates its own implementation details without leaking it to other components
const Text = ({ children }) => {
console.log('I am calling as an instance of Text')
return <p>{children}</p>
}
console.log('I am a component', Text)
const App = () => {
console.log('I am calling as an instance of App')
const paragraphOne = <p>You rock, React!</p>
const paragraphTwo = <Text>Bye!</Text>
console.log('I am an element:', paragraphOne)
console.log('I am an element too:', paragraphTwo)
return (
<div>
<p>Hello React</p>
{paragraphOne}
{paragraphTwo}
</div>
)
}
console.log('I am a component', App)
console.log('I am an element', <App />)
console.log('I am an element', <p>too</p>)
工具
qnm
快速查找一个 npm 包下安装的包
plasmo
浏览器扩展框架
i 微信读书 微信读书增强体验谷歌插件
生活
凌晨 1 点一只大虫子在房间里飞撞窗户声音很大,想抓虫子爬到了电脑桌上,下来想跳到床上踩了空,整个人左半身坠撞在了硬板床上,非常痛。
一句话
对于那些没有想象力的人来说,保持常态就是他们的理想。 —— 荣格
2021 年只有两种人在写博客,一种是试图建立受众并从中获利的人,另一种是只想写出想法、而没有任何目标的人。
这两种人的行为都非常好。选择做你喜欢的事,坚持下去,它们最终都可以对他人产生价值。
——《我从博客中学到的东西》