koa 2 ctx.render 를 해결 하 는 것 은 함수 오류 보고 문제 가 아 닙 니 다.
2402 단어 koa2ctx.render
프로젝트 경 로 는 다음 과 같 습 니 다.
app.js 는 이전에 express 로 쓴 입구 파일 입 니 다.
koa.js 는 koa 2 로 복사 한 입구 파일 입 니 다.
view 는 전단 페이지 폴 더 이 고 템 플 릿 엔진 은 pug 입 니 다.
오류 보고 시 koa.js 코드 는 다음 과 같 습 니 다.
// koa
const Koa = require('koa');
const Router = require('koa-router');
const koaBody = require('koa-body');
const views = require('koa-views');
const serve = require('koa-static');
const app = new Koa();
const router = new Router();
app.use(serve(__dirname));
app.use(koaBody()).use(router.routes());
app.use(views(__dirname + '/views/pages',{
extension: 'pug'
}))
app.listen(3000);
router.get('/', async(ctx, next) => {
await ctx.render("index",{
title:"nodeWeb "
})
});
사실 이 bug 는 잘 해결 되 었 습 니 다.그것 은 템 플 릿 엔진 을 설정 하 는 코드 를 경로 와 관련 된 모든 코드 로 이동 하기 전에 여기에서 수정 해 야 합 니 다.
// koa
const Koa = require('koa');
const Router = require('koa-router');
const koaBody = require('koa-body');
const views = require('koa-views');
const serve = require('koa-static');
const app = new Koa();
const router = new Router();
app.use(serve(__dirname));
//
app.use(views(__dirname + '/views/pages',{
extension: 'pug'
}))
// koa-router
app.use(koaBody()).use(router.routes());
app.listen(3000);
//
router.get('/', async(ctx, next) => {
await ctx.render("index",{
title:"nodeWeb "
})
});
이 bug 를 만 든 이 유 는 미들웨어 의 실행 이 순서 가 있 기 때 문 입 니 다.경로 가 앞 에 있 고 템 플 릿 엔진 이 뒤에 있 으 면 ctx.render 로 실 행 될 때 템 플 릿 엔진 과 관련 된 미들웨어 가 아직 실행 되 지 않 았 습 니 다.render 방법 은 ctx 에 연결 되 지 않 았 기 때문에 ctx.render is not a function 에 보고 합 니 다.이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
koa 2 ctx.render 를 해결 하 는 것 은 함수 오류 보고 문제 가 아 닙 니 다.최근 에 koa 2 를 사용 하 는 것 을 배 웠 습 니 다.koa 2 로 복사 하기 전에 express 로 쓴 입구 파일 을 사용 하려 고 했 을 때 명령 행 이 잘못 보 고 된 ctx.render is not a...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.