升级脚手架
parent
d4fe48f4c9
commit
321723d2cd
7
index.js
7
index.js
|
@ -19,7 +19,9 @@ import {
|
||||||
import { writeMainJs, writeAppJs, writeModelJs } from './lib/demo-js.js'
|
import { writeMainJs, writeAppJs, writeModelJs } from './lib/demo-js.js'
|
||||||
|
|
||||||
const CURRENT_DIR = process.cwd()
|
const CURRENT_DIR = process.cwd()
|
||||||
const root = dirname(import.meta.url.slice(process.platform === 'win32' ? 10 : 7))
|
const root = dirname(
|
||||||
|
import.meta.url.slice(process.platform === 'win32' ? 10 : 7)
|
||||||
|
)
|
||||||
const { version } = JSON.parse(fs.cat(join(root, './package.json')))
|
const { version } = JSON.parse(fs.cat(join(root, './package.json')))
|
||||||
|
|
||||||
const DEFAULT_NAME = 'gm5-app'
|
const DEFAULT_NAME = 'gm5-app'
|
||||||
|
@ -72,7 +74,8 @@ function printHelp() {
|
||||||
{
|
{
|
||||||
name: 'shouldOverwrite',
|
name: 'shouldOverwrite',
|
||||||
type: _ => (isEmpty(targetDir) ? null : 'toggle'),
|
type: _ => (isEmpty(targetDir) ? null : 'toggle'),
|
||||||
message: _ => `目录 ${cyan(targetDir)} 非空, 是否${red('删除')}目录下所有的文件?`,
|
message: _ =>
|
||||||
|
`目录 ${cyan(targetDir)} 非空, 是否${red('删除')}目录下所有的文件?`,
|
||||||
initial: false,
|
initial: false,
|
||||||
active: '是',
|
active: '是',
|
||||||
inactive: '否'
|
inactive: '否'
|
||||||
|
|
|
@ -14,7 +14,7 @@ export function writePackageJson(file, name) {
|
||||||
type: 'module',
|
type: 'module',
|
||||||
main: 'app.js',
|
main: 'app.js',
|
||||||
dependencies: {
|
dependencies: {
|
||||||
'@gm5/core': '^1.1.4'
|
'@gm5/core': '^2.0.0'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
null,
|
null,
|
||||||
|
@ -56,7 +56,7 @@ jsxBracketSameLine: true
|
||||||
jsxSingleQuote: true
|
jsxSingleQuote: true
|
||||||
semi: false
|
semi: false
|
||||||
singleQuote: true
|
singleQuote: true
|
||||||
printWidth: 100
|
printWidth: 80
|
||||||
useTabs: false
|
useTabs: false
|
||||||
tabWidth: 2
|
tabWidth: 2
|
||||||
trailingComma: none
|
trailingComma: none
|
||||||
|
@ -67,10 +67,13 @@ arrowParens: avoid
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
export function writePm2File(file, { env = 'production', name = 'gm5-app', cluster = true }) {
|
export function writePm2File(
|
||||||
|
file,
|
||||||
|
{ env = 'production', name = 'gm5-app', cluster = true }
|
||||||
|
) {
|
||||||
fs.echo(
|
fs.echo(
|
||||||
`
|
`
|
||||||
script: node --experimental-json-modules ./app.js
|
script: node ./app.js
|
||||||
cwd: ./
|
cwd: ./
|
||||||
watch: true
|
watch: true
|
||||||
name: ${name}
|
name: ${name}
|
||||||
|
|
|
@ -9,21 +9,22 @@ import fs from 'iofs'
|
||||||
export function writeMainJs(file) {
|
export function writeMainJs(file) {
|
||||||
fs.echo(
|
fs.echo(
|
||||||
`
|
`
|
||||||
import Five from '@gm5/core'
|
import { createApp } from '@gm5/core'
|
||||||
|
|
||||||
|
const app = createApp()
|
||||||
|
|
||||||
|
// // 也可以在创建应用时, 就传递一些配置进去, 等价于下面的 app.set({...})
|
||||||
|
// const app = createApp({...})
|
||||||
|
|
||||||
const app = new Five()
|
|
||||||
|
|
||||||
// app.set({
|
// app.set({
|
||||||
// // 可开启session支持
|
// // 可开启跨域支持
|
||||||
// session: { enabled: true, type: 'redis' }
|
// cors: { enabled: true }
|
||||||
//
|
|
||||||
// // 可开启模板引擎的支持
|
|
||||||
// views: { enabled: true, dir: './views' }
|
|
||||||
// })
|
// })
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 预加载应用, 这一步是必须的, 且需要在listen方法前调用
|
// 预加载应用, 这一步是必须的, 且需要在run()方法前调用
|
||||||
app.preload('./apps/')
|
app.preload('./apps/')
|
||||||
|
|
||||||
// 中间件示例
|
// 中间件示例
|
||||||
|
@ -47,6 +48,7 @@ app.preload('./apps/')
|
||||||
// })
|
// })
|
||||||
|
|
||||||
app.listen(3000)
|
app.listen(3000)
|
||||||
|
.run()
|
||||||
|
|
||||||
`,
|
`,
|
||||||
file
|
file
|
||||||
|
@ -83,9 +85,9 @@ import Controller from '@gm5/controller'
|
||||||
|
|
||||||
// import Model from '../models/index.js'
|
// import Model from '../models/index.js'
|
||||||
|
|
||||||
// 所有的应用, 都要继承Controller
|
// 也可以不继承 Controller。 如用到session/jwt/views模块, 可继承Controller, 以获得更简单的调用方式(也可以不继承)。
|
||||||
// 以获取跟框架交互的能力
|
//
|
||||||
export default class Index extends Controller {
|
export default class extends Controller {
|
||||||
|
|
||||||
// 这个main方法是可选的, 如果有定义, 会自动先调用
|
// 这个main方法是可选的, 如果有定义, 会自动先调用
|
||||||
// 可以在这里做任何需要预处理的事, 支持async/await
|
// 可以在这里做任何需要预处理的事, 支持async/await
|
||||||
|
@ -96,7 +98,7 @@ export default class Index extends Controller {
|
||||||
}
|
}
|
||||||
|
|
||||||
async indexAction(){
|
async indexAction(){
|
||||||
this.response.end('It works!')
|
this.response.body = 'It works!'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
"name": "create-five",
|
"name": "create-five",
|
||||||
"description": "一个快速创建Five.js项目的小工具",
|
"description": "一个快速创建Five.js项目的小工具",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"version": "1.1.0",
|
"version": "1.2.0",
|
||||||
"author": "yutent <yutent.io@gmail.com>",
|
"author": "yutent <yutent.io@gmail.com>",
|
||||||
"bin": {
|
"bin": {
|
||||||
"create-five": "index.js"
|
"create-five": "index.js"
|
||||||
|
@ -14,7 +14,7 @@
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/bytedo/gmf.cli.git"
|
"url": "https://git.wkit.fun/gm5/cli.git"
|
||||||
},
|
},
|
||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue