在vue中import()语法不能传入变量的问题及解决

Talia ·
更新时间:2024-09-20
· 1074 次阅读

目录

import()语法不能传入变量

解决办法

问题

动态引入import()变量失效

import()语法不能传入变量 解决办法

一定要用变量的时候,可以通过字符串模板来提供部分信息给webpack;

例如import(`./path/${myFile}`), 这样编译时会编译所有./path下的模块,但运行时确定myFile的值才会加载,从而实现懒加载。

import(`./path/${myFile}`), 问题

可以用

const cc = () => import('./aa.vue');  

如下代码报错

let name = '@/views/aa.vue'; const cc = () => import(name); 

或者

function jikj() {   return './gg.js'; } const cc = () => import(jikj());  动态引入import()变量失效

import我们通常的用法是

import('@/pages/demo').then(item=>{})

但是现在有个需求必须要动态传入路径,发现传入变量后不能识别,代码如下

const modelpath = ‘@/pages/demo' import(modelpath).then(item => {})

因为webpack的现在的实现方式不能实现完全动态,所以可以通过字符串模板来提供部分信息给webpack,如下

const modelpath = ‘/demo' import(`@/pages${modelpath}`).then(item => {})

以上为个人经验,希望能给大家一个参考,也希望大家多多支持软件开发网。 



VUE import 变量

需要 登录 后方可回复, 如果你还没有账号请 注册新账号