You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用vite-plugin-nunjucks报错TypeError: nunjucks is not a function求助

报错原因及解决方法

核心原因

报错TypeError: nunjucks is not a function的本质是你导入的nunjucks不是可执行的初始化函数,通常是插件导入方式错误导致的。

具体解决步骤

1. 修正插件导入方式

vite-plugin-nunjucks的正确导入可能需要使用命名导入而非默认导入,修改vite.config.js中的导入代码:

import { nunjucks } from "vite-plugin-nunjucks";

export default {
    plugins: [nunjucks({})],
    root: "src",
    build: {
        outDir: "../dist",
        emptyOutDir: true,
    },
};

2. 排查版本兼容性问题

如果上述修改无效,先确认插件与当前Vite版本是否兼容:

  • 卸载现有插件:
    npm uninstall vite-plugin-nunjucks
    
  • 安装最新稳定版:
    npm install vite-plugin-nunjucks --save-dev
    

3. 调试插件导出结构

若问题仍存在,可通过打印导入内容确认结构,在vite.config.js顶部添加调试代码:

import nunjucks from "vite-plugin-nunjucks";
console.log(nunjucks);

运行npm run dev后查看终端输出:

  • 若输出是包含default属性的对象,需调用nunjucks.default():
    plugins: [nunjucks.default({})],
    
  • 若输出是包含nunjucks属性的对象,保持命名导入方式即可。

4. 适配配置文件语法

如果你的Vite配置文件是CommonJS格式(vite.config.cjs),导入方式需改为:

const { nunjucks } = require("vite-plugin-nunjucks");

内容的提问来源于stack exchange,提问作者AL-IMRAN

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 13:45:07