riot.js webpack 에 Hello World
배경
일로 간단한 LP 구축을 할 기회가 있었다.
잠시 프론엔드를 만지지 않았기 때문에 공부도 겸해 전전부터 신경이 쓰이고 있었다 riot
작업 로그
먼저 프로젝트 폴더 아래에 package.json 만들기
$ npm init
webpack 관련 패키지 설치
※webpack은 JS 파일을 정리하는 고기능 모듈 번들 중 하나
$ npm i webpack webpack-cli webpack-dev-server
riot 관련 패키지 설치
$ npm i riot @riotjs/hot-reload @riotjs/webpack-loader @riotjs/compiler
빠른 시작 을 참고로 파일 준비
index.html
<html>
<head>
<meta charset="UTF-8">
<title>Riot app</title>
</head>
<body>
<div id="app"></div>
<script src="public/bundle.js" charset="utf-8"></script>
</body>
</html>
app.riot
<app>
<p>{ props.message }</p>
</app>
main.js
import * as riot from 'riot'
import App from './app.riot'
const mountApp = riot.component(App)
const app = mountApp(
document.getElementById('root'),
{ message: 'Hello World' }
)
webpack 설정 파일 준비 webpack.config.js
const path = require('path')
const webpack = require('webpack')
module.exports = {
entry: './main.js',
output: {
path: path.resolve(__dirname, 'public'),
publicPath: '/public/',
filename: 'bundle.js'
},
devtool: 'inline',
module: {
rules: [
{
test: /\.riot$/,
exclude: /node_modules/,
use: [{
loader: '@riotjs/webpack-loader',
options: {
hot: true
}
}]
}
]
}
}
지금까지의 파일 구성은 이런 느낌
webpack-dev-server로 동작 확인
./node_modules/.bin/webpack-dev-server --port 8080
http://localhost-8080.com/ 방문
배포용 bundle.js 만들기
$ ./node_modules/.bin/webpack
출력한 bundle.js와 index.html을 서버에 올리면 서버에서도 움직일 것이다.
소감
인터넷에 정보가별로 구르지 않는 인상.
또한 v3에서 v4로 큰 변화가 있었던 것처럼 몇 안되는 넷 기사를 의지하여 Hellow World를 표시하는데도 상상 이상으로 시간을 걸렸다 (웃음)
이대로 riot.js로 사이트 구축할까는 요 검토.
Reference
이 문제에 관하여(riot.js webpack 에 Hello World), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/hiroyasutake0104/items/0fdfa75694e250f17524텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)