\n\n\u003Cimg width=\"2032\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/c1d39d3f-9330-4896-896e-d6d381279876\" />\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[3151],{"name":3152,"color":3153},"pending triage","E99695",32412,"nuxt","open","docs (nuxt 4.x): video from Vue School is not playable","2025-06-16T14:45:59Z","https://github.com/nuxt/nuxt/issues/32412",0.6885463,{"description":3162,"labels":3163,"number":3168,"owner":3155,"repository":3155,"state":3156,"title":3169,"updated_at":3170,"url":3171,"score":3172},"### Environment\r\n\r\n------------------------------\r\n- Operating System: Darwin\r\n- Node Version: v18.12.1\r\n- Nuxt Version: 3.11.2\r\n- CLI Version: 3.11.1\r\n- Nitro Version: 2.9.6\r\n- Package Manager: yarn@1.22.19\r\n- Builder: -\r\n- User Config: devtools, modules\r\n- Runtime Modules: define-async-module-issue@1.0.1\r\n- Build Modules: -\r\n------------------------------\r\n\r\n### Reproduction\r\n\r\n### **Github:**\r\n**module**: https://www.npmjs.com/package/define-async-module-issue?activeTab=code\r\n**root**: https://github.com/RomanSkrypnik/define-async-comp-issue\r\n### **Video:**\r\ndev ( works fine): [Screencast 2024-05-21 20-59-14.webm](https://github.com/nuxt/nuxt/assets/44501848/f9ed2f9b-18b0-4d2f-ad60-dd1953ca7ae8)\r\nbuild: [Screencast 2024-05-21 21-00-05.webm](https://github.com/nuxt/nuxt/assets/44501848/bc06f96d-39cd-458a-a651-ffa26569e6da)\r\n\r\n### Describe the bug\r\n\r\nCannot use dynamic import from nuxt module if it's used as **npm package**:\r\n\u003Cimg width=\"537\" alt=\"image\" src=\"https://github.com/nuxt/nuxt/assets/44501848/b1cd2903-ba14-403f-ba7d-b3c4e0ffcaf4\">\r\n\u003Cimg width=\"590\" alt=\"image\" src=\"https://github.com/nuxt/nuxt/assets/44501848/e594d835-37ee-4324-a768-e8e74b8e8490\">\r\nIn dev mode and playground everything works fine but build one doesn't\r\nAs I understand, the problem is path - in build mode nuxt creates the path relative to host\r\nFor example: http://localhost:3000/components/Test.vue \r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Logs\r\n\r\n_No response_",[3164,3165],{"name":3152,"color":3153},{"name":3166,"color":3167},"vite","3574D1",27296,"Nuxt module dynamic imports not working in build mode","2024-06-30T11:03:59Z","https://github.com/nuxt/nuxt/issues/27296",0.7173909,{"description":3174,"labels":3175,"number":3179,"owner":3155,"repository":3155,"state":3180,"title":3181,"updated_at":3182,"url":3183,"score":3184},"Hello. I have very important module that I can't setup with Nuxt, please help.\r\n\r\n```html\r\n\u003Cvideo id=\"player\" class=\"video-js\" controls autoplay>\r\n \u003Csource src=\"http://vjs.zencdn.net/v/oceans.mp4\" type=\"video/mp4\">\u003C/source>\r\n\u003C/video>\r\n```\r\n```js\r\nmounted () {\r\n video('player')\r\n }\r\n```\r\nThis works only if I navigate directly on that page or reload it. This doesn't work if I navigate to this page from other pages in my app. \r\n\r\nHow to fix it?\n\n\u003C!--cmty-->\u003C!--cmty_prevent_hook-->\n\u003Cdiv align=\"right\">\u003Csub>\u003Cem>This question is available on \u003Ca href=\"https://nuxtjs.cmty.io\">Nuxt.js\u003C/a> community (\u003Ca href=\"https://nuxtjs.cmty.io/nuxt/nuxt.js/issues/c2117\">#c2117\u003C/a>)\u003C/em>\u003C/sub>\u003C/div>",[3176],{"name":3177,"color":3178},"2.x","d4c5f9",2442,"closed","Video.js doesn't work when route on client","2023-01-18T15:55:18Z","https://github.com/nuxt/nuxt/issues/2442",0.6822221,{"description":3186,"labels":3187,"number":3189,"owner":3155,"repository":3155,"state":3180,"title":3190,"updated_at":3191,"url":3192,"score":3193},"### Environment\n\nOS: Ubuntu 22.04.5 LTS\nNode: v20.12.2\nNPM: 10.6.0\nNuxt: ^3.13.0\n\n### Reproduction\n\n1) Create a new Nuxt project or use an existing one.\n2) Add a video file with a .ogv extension to your assets folder (e.g., assets/video.ogv).\n3) Use the `video` tag to include `.ogv` file as a source in your component:\n\n```html\n\u003Cvideo autoplay loop muted>\n \u003Csource src=\"~/assets/video.ogv\" type=\"video/ogg\" />\n\u003C/video>\n```\n\n4) Run the development server using npm run dev or yarn dev.\n\n### Describe the bug\n\nDuring local development, when attempting to add a source with the `.ogv` file extension in the `video` tag, the application fails to parse the file and throws an error. The terminal also outputs binary-like data or other unreadable characters. The issue seems to stem from the Vite import-analysis plugin not handling `.ogv` files correctly.\n\nThe error:\n\n\nTerminal output:\n\n\n### Additional context\n\n**Expected Behavior:**\nThe `.ogv` file should be correctly handled as an asset, and the video should render without issues in the browser.\n\n**Actual Behavior:**\n```\n[plugin:vite:import-analysis] Failed to parse source for import analysis because the content contains invalid JS syntax. You may need to install appropriate plugins to handle the .ogv file format, or if it's an asset, add \"**/*.ogv\" to `assetsInclude` in your configuration.\n```\n\nAdditionally, I could not find any documentation or guidance on how to properly handle `.ogv` files as assets in Nuxt. There are no available plugins or instructions for working with `.ogv` files, making it unclear how this use case should be supported.",[3188],{"name":3152,"color":3153},30180,"Error Parsing .ogv Files in Video Tags","2024-12-06T15:10:22Z","https://github.com/nuxt/nuxt/issues/30180",0.68899935,{"labels":3195,"number":3200,"owner":3155,"repository":3155,"state":3180,"title":3201,"updated_at":3202,"url":3203,"score":3204},[3196,3199],{"name":3197,"color":3198},"3.x","29bc7f",{"name":3152,"color":3153},13246,"No way of using dynamic images","2023-01-19T16:49:13Z","https://github.com/nuxt/nuxt/issues/13246",0.69894516,{"description":3149,"labels":3206,"number":3207,"owner":3155,"repository":3208,"state":3180,"title":3157,"updated_at":3209,"url":3210,"score":3211},[],1937,"nuxt.com","2025-06-17T19:02:09Z","https://github.com/nuxt/nuxt.com/issues/1937",0.70306045,{"description":3213,"labels":3214,"number":3217,"owner":3155,"repository":3155,"state":3180,"title":3218,"updated_at":3219,"url":3220,"score":3221},"### Describe the feature\n\nnuxt.js3 How to get the js files in local assets, but the introduction fails.\r\n\r\n`useHead({\r\n script: [\r\n {\r\n src:'@/assets/js/qrcode.min.js'\r\n }\r\n ]\r\n})`\r\n\r\n\n\n### Additional information\n\n- [X] Would you be willing to help implement this feature?\n- [X] Could this feature be implemented as a module?\n\n### Final checks\n\n- [X] Read the [contribution guide](https://nuxt.com/docs/community/contribution).\n- [X] Check existing [discussions](https://github.com/nuxt/nuxt/discussions) and [issues](https://github.com/nuxt/nuxt/issues).",[3215,3216],{"name":3197,"color":3198},{"name":3152,"color":3153},25856," nuxt.js3 How to get the js files in local assets","2024-02-19T08:35:17Z","https://github.com/nuxt/nuxt/issues/25856",0.7052941,{"labels":3223,"number":3226,"owner":3155,"repository":3155,"state":3180,"title":3227,"updated_at":3228,"url":3229,"score":3230},[3224,3225],{"name":3152,"color":3153},{"name":3177,"color":3178},8665,"Problem with a dynamic added scripts in dev mode","2023-01-22T15:38:40Z","https://github.com/nuxt/nuxt/issues/8665",0.7064324,{"description":3232,"labels":3233,"number":3235,"owner":3155,"repository":3155,"state":3180,"title":3236,"updated_at":3237,"url":3238,"score":3239},"I'm not able to load a video from `assets` folder, I know this might be solved in #1224. I tried both `~/assets/...` and `~assets/...` but I can't make it work.\r\n\r\nMy component:\r\n\r\n```html\r\n\u003Ctemplate>\r\n \u003Cdiv>\r\n \u003Cvideo src=\"~assets/video.mp4\">\r\n \u003Cp>Your browser does not support the video tag.\u003C/p>\r\n \u003C/video>\r\n \u003C/div>\r\n\u003C/template>\r\n```\r\n\r\nMy assets folder:\r\n\r\n\r\nAm I doing something wrong?\r\n\n\n\u003C!--cmty-->\u003C!--cmty_prevent_hook-->\n\u003Cdiv align=\"right\">\u003Csub>\u003Cem>This question is available on \u003Ca href=\"https://nuxtjs.cmty.io\">Nuxt.js\u003C/a> community (\u003Ca href=\"https://nuxtjs.cmty.io/nuxt/nuxt.js/issues/c1783\">#c1783\u003C/a>)\u003C/em>\u003C/sub>\u003C/div>",[3234],{"name":3177,"color":3178},2008,"Load video from assets folder","2023-01-18T15:42:55Z","https://github.com/nuxt/nuxt/issues/2008",0.7064799,{"description":3241,"labels":3242,"number":3245,"owner":3155,"repository":3155,"state":3180,"title":3246,"updated_at":3247,"url":3248,"score":3249},"### Environment\r\n\r\n------------------------------\r\n- Operating System: Linux\r\n- Node Version: v16.17.0\r\n- Nuxt Version: 3.6.5\r\n- Nitro Version: 2.5.2\r\n- Package Manager: yarn@1.22.19\r\n- Builder: vite\r\n- User Config: -\r\n- Runtime Modules: -\r\n- Build Modules: -\r\n------------------------------\r\n\r\n### Reproduction\r\n\r\nhttps://codesandbox.io/p/sandbox/festive-satoshi-qk263h?file=%2Fapp.vue%3A12%2C1\r\n\r\n### Describe the bug\r\n\r\nI'm using this handy function to dynamically get asset links:\r\n\r\n```typescript\r\n// utils/functions.ts\r\nexport function getAbsoluteAssetLink(path: string) {\r\n // https://stackoverflow.com/questions/69696677/vite-vue-3-require-is-not-defined-when-using-image-source-as-props\r\n return new URL(`../assets/${path}`, import.meta.url).href;\r\n}\r\n```\r\n\r\nAnd getting asset links in a script setup:\r\n```typescript\r\n// app.vue\r\n\u003Cscript setup lang=\"ts\">\r\nimport { getAbsoluteAssetLink } from \"./utils/functions\";\r\n\r\n// If this function is called at least once, build fails\r\n// comment it out and build succeeds!\r\ngetAbsoluteAssetLink(\"css/test.css\");\r\n\u003C/script>\r\n```\r\n\r\nThe error thrown is:\r\n```\r\n[10:48:39 AM] ERROR Unexpected character '@' (Note that you need plugins to import files that are not JavaScript)\r\nfile: /project/home/alex-eliot/workspace/assets/css/fonts/poppins.css?url?inline&used:1:0\r\n1: @font-face {\r\n ^\r\n2: font-display: swap;\r\n3: font-family: \"Poppins\";\r\n\r\n\r\n[10:48:39 AM] ERROR Unexpected character '@' (Note that you need plugins to import files that are not JavaScript)\r\n\r\n at error (node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:2124:30)\r\n at Module.error (node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13463:16)\r\n at Module.tryParse (node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:14184:25)\r\n at Module.setSource (node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:13786:39)\r\n at ModuleLoader.addModuleSource (node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:23782:20)\r\n\r\nerror Command failed with exit code 1.\r\n```\r\n\r\nThis has worked well on Nuxt 3.5.3. On a chore routine to upgrade to Nuxt 3.6.5, this issue has prevented building the frontend. So I'm unsure which version exactly was where it started being an issue. Please note that this function **has** to exist in the `utils` folder. If we declare that function directly in the script setup, the build succeeds.\r\n\r\n```typescript\r\n// app.vue\r\n\u003Cscript setup lang=\"ts\">\r\nfunction getAbsoluteAssetLink(path: string) {\r\n return new URL(`./assets/${path}`, import.meta.url).href;\r\n}\r\n\r\n// Build succeeds\r\ngetAbsoluteAssetLink(\"css/test.css\");\r\n\u003C/script>\r\n```\r\n\r\nUsing the URL directly works as well:\r\n```typescript\r\n// app.vue\r\n\u003Cscript setup lang=\"ts\">\r\n// Build succeeds\r\nnew URL(`./assets/test.css`, import.meta.url).href;\r\n\u003C/script>\r\n```\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Logs\r\n\r\n_No response_",[3243,3244],{"name":3197,"color":3198},{"name":3152,"color":3153},22427,"Nuxt 3.6.5: Build fails if any asset link is dynamically imported from a function in the `utils` folder when there's a CSS file that starts with \"@\"","2024-06-15T22:44:01Z","https://github.com/nuxt/nuxt/issues/22427",0.70830125,["Reactive",3251],{},["Set"],["ShallowReactive",3254],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fqzjdXkpyfjoAGC3RhSXwlHMv8IIUKAC-SSNyr53Cqxs":-1},"/nuxt/nuxt/22462"]