Guide to Rails and Preact (Part 1)

💡บทความนี้จะแนะนำไลบราลีที่ชื่อ Preact ซึ่งถือเป็นไลบราลี JavaScript ขนาดเล็กและทันสมัยให้กับ Frontend Developer ได้รู้จักกัน โดยในบทความจะแนะนำวิธีการติดตั้ง Preact บน Rails

เริ่มต้น

$ rails new book_store --wepacker -d postgresql
$ yarn add preact @babel/plugin-transform-react-jsx
plugins: [
  ...,
  [
    "@babel/plugin-transform-react-jsx",
    { "pragma": "h" }
  ]
]
$ rails generate controller Pages index
Rails.application.routes.draw do
  root to: 'pages#index'
end
...
extensions:
  - .js
  - .jsx
...
import { h, render, Component } from 'preact'

class Box extends Component {
  state = { value: '', name: '' }

  onInput = (event) => {
    this.setState({ value: event.target.value })
  }

  onSubmit = (event) => {
    event.preventDefault();
    this.setState({ name: this.state.value })
  }

  render() {
    return (
      <div>
        <form onSubmit={this.onSubmit}>
          <input type="text" value={this.state.value} onInput={this.onInput}></input>
          <button type="submit">อัพเดต</button>
        </form>

        <h1>แสดงผลที่นี่: {this.state.name}</h1>
      </div>
    );
  }
}

document.addEventListener('DOMContentLoaded', () => {
  render(<Box />, document.body)
})
<%= javascript_pack_tag 'box' %>

preact ทดสอบการทำงาน Preact

สำหรับในบทความนี้ก็จะแนะนำการติดตั้งไว้เพียงเท่านี้ สำหรับในบทความหน้า เราจะมาลงลึกในการใช้งาน Preact กัน 🤩 👉 Part 2

Referecnes