vue-cli搭配iview创建主题 报错Inline JavaScript is not enabled. Is it set in your options?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
这个错误信息表明在使用Vue CLI和iView创建主题时,遇到了一个关于内联JavaScript禁用的警告。这通常是因为在处理CSS或者LESS等样式文件时,遇到了包含JavaScript代码的行,但当前的编译环境并没有开启对内联JavaScript的支持。
针对这个问题,如果你是在使用less-loader
或类似的加载器来处理.less
文件,并且iView或其他UI框架的自定义主题功能涉及到到了less变量的动态计算,你可能需要调整Webpack配置以允许内联JavaScript执行。
对于基于Vue CLI 3及以上版本的项目,你可以按照以下步骤尝试解决问题:
修改webpack配置:Vue CLI允许通过vue.config.js
文件来修改Webpack配置。首先,在你的项目根目录下确保有vue.config.js
文件,如果没有,请创建一个。
添加loader规则:在vue.config.js
中,你需要通过chainWebpack
或configureWebpack
方法来修改Webpack的配置,以便允许less-loader处理内联JavaScript。这里是一个示例配置,展示了如何修改less-loader的选项:
module.exports = {
chainWebpack: config => {
const oneOfsMap = config.module.rule('less').oneOfs.store;
oneOfsMap.forEach(item => {
item
.use('less-loader')
.loader('less-loader')
.tap(options => {
// 修改less-loader的options,添加javascriptEnabled选项
return { ...options, javascriptEnabled: true };
});
});
},
};
或者,如果你使用的是Vue CLI 2.x,你可能需要直接修改build/webpack.base.conf.js
文件中的相应loader配置。
npm run serve
或yarn serve
命令),这时应该可以正常编译含有内联JavaScript的样式文件了。请注意,虽然允许内联JavaScript可以解决编译问题,但也可能会引入安全风险,特别是当处理不可信的输入时。因此,确保你了解并管理好这些风险。