问题

uniapp在前一个版本里面,在app中引入公共css没有任何问题,后来升级后,突然报错,百度半天有人问,但是好像也没有人回答o(╥﹏╥)o。

<style>
	/* uni.css - 通用组件、模板样式库,可以当作一套ui库应用 */
	@import './common/uni.css';
	@import './common/iconfont.css';
	/*每个页面公共css */
</style>

后来升级以后,突然措手不及的给了我一大串报错
nvue中不支持如下css。如全局或公共样式受影响,建议将告警样式写在ifnd APP-PLUS-NVUE的条件编译中

WARNING: `display` is not a standard property name (may not be supported) at App.vue:72
WARNING: `background` is not a standard property name (may not be supported), suggest `background-color` at App.vue:144

后来找了半天发现了官网(https://uniapp.dcloud.io/)是这样说的

nvue页面编译模式差异
uni-app 深度改进了 weex,提供了2种编译模式,一种是常规的 weex 组件模式,即编写<div>。另一种是 uni-app 组件模式,即编写<view>。后者更提供了编译为小程序和H5的能力,实现了全端输出。

也可以理解为uni-app做了一个原生渲染的小程序引擎。
在 manifest.json 中修改2种编译模式,manifest.json -> app-plus -> nvueCompiler 切换编译模式。

nvueCompiler 有两个值:

weex
uni-app


// manifest.json    
{    
    // ...    
     /* App平台特有配置 */    
    "app-plus": {    
        "nvueCompiler":"uni-app" //是否启用 uni-app 模式  
    }    
}

如果没有在manifest里明确配置,默认是weex模式。这是为了向下兼容。
官方说如果不填写,默认就是weex兼容模式,但是项目就是报错。

解决办法

在manifest.json -> app-plus -> nvueCompiler 中将 “nvueCompiler”:“weex”, 加上,就不报错了,不知道是不是升级后默认的变了。

"app-plus" : {
        "usingComponents" : true,
		"nvueCompiler":"weex",   
手动给它写一遍,成功,不在报错。

后来

为了打包,所以又跟新的版本以后,又报了同样的错误,o(╥﹏╥)o,所以又在相同位置加上了这句,各位看官可以试试,先说好,其他的版本不保证有用,只是我使用的时候确实是有用了的,可以作为参考,没用的话我也不知道怎么办了~

"app-plus" : {
        "usingComponents" : true,
		"nvueCompiler":"weex",   
		"compilerVersion" : 2,
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐