Vue使用问题记录

作者: Light413 | 来源:发表于2018-12-25 21:47 被阅读13次
vue_logo.png

Vue使用中遇到的问题总结记录。内容比较基础,无奈我是菜鸟

1、Vue中字符串换行不起作用

<div>{{item.content}}</div>

content字符串很长,内部的换行符\n不起作用。

由于Vue将其插值渲染成div内部文本后,文本并不换行,换行符显示为一个空格。解决:

<div style="white-space: pre-wrap;">{{item.content}}</div>

其中div不能换行,如果换行后 首行缩进的距离很大。其实设置为pre即可使换行符发挥作用,但这时文本在div宽度不足时不会自动换行,而是撞破边界延伸到div外部去,所以还得加上wrap。

2、Vue数据对象嵌套对象时的实例声明

var baseInfo = new Vue({
    el:'#id',
    data:{
        item: {}
    }

item中包含其他对象必须先声明如下:

var baseInfo = new Vue({
    el:'#id',
    data:{
        item: {
            user:{}
        }
    }

否则会报错

TypeError: Cannot read property 'xxx' of undefined at js/p/vue.min.js:6

3、v-if v-else条件渲染

声明格式

<div v-if="true">
//表达式为真,显示
</div>
<div v-else>
//为假,显示
</div>

v-if , v-else 中间不能有其他元素,以下是不能正确显示的。

<div v-if="true">
//表达式为真,显示
</div>
<div>其他元素,此时if else结构被打乱 </div>
<div v-else>
//为假,显示
</div>

4、计算属性

当需要对item中数据进行转化处理,比如日期格式化等其他操作,此时计算属性正好。此时我的数据源是{}对象。

如果是[]数组,如果要对每一个进行处理好像不行,查询得知计算属性不能参数。所以我是for循环自己每个处理一次。

var baseInfo = new Vue({
el:'#base-info-id',
data:{
    item: {
        user:{}
    }
},
computed:{
    user_name:function(){
        var d = this.item;
        var user = d['user'];
        var uname = user["name"] || user['nickName'];
        return uname;
    },
    avatar:function(){
        var d = this.item;
        var u_avatar = d['user']['avatar'] || "default.png";
        return u_avatar;
    },
    postDate:function(){
        var d = this.item;
        var s = d['postDate'];
        var t = dateUtils.format(s);
        return t;
    },
    images:function(){
        //添加图片  
        var d = this.item;
        var igStr = d['images'];
        if(igStr != null && igStr.length > 0){
            var igurlArr = igStr.split(',');
            // console.log(igurlArr.length);
            return igurlArr;
        }
        return [];
    }
}
});

5、v-cloak

HTML 绑定 Vue实例,在页面加载时会闪烁,如下在数据未赋值之前会显示{{msg}}字符串,非常不好看。

///不加v-cloak
<div id="app">
    {{msg}}
</div>

解决如下:

///加v-cloak 防止页面加载完成之前闪烁
<div id="app" v-cloak>
    {{msg}}
</div>

然后在css中添加
[v-cloak] {
  display: none;
}

6、{{s}} 其中s可以是个表达式

{{isTrue  ? '正确' : '错误'}}

这样简单的操作可直接替代v-if v-else,代码更简洁。

持续更新

Hi 大家好!我是Light413,一名iOS开发者,写代码我是认真的,即使看到一个多余的空格就会感觉不爽😆。
喜欢前端及后台开发。简书就是我的阵营,我喜欢在这里学习,在这里分享。以后文章会不断的更新,介绍关于iOS开发学习总结 , 介绍基于MUI 、H5+ 及H5开发中感悟记录总结。感觉有用就点赞哈,喜欢就大胆的关注。

相关文章

  • 2018-11-21

    vue-cli 3.0 使用小结 个人使用 VUE-CLI 3.0 碰到一些问题,用作记录 VUE-CLI 3.0...

  • vue-各种兼容问题

    使用vue框架在ios里面返回白屏问题记录

  • Vue使用问题记录

    Vue使用中遇到的问题总结记录。内容比较基础,无奈我是菜鸟 1、Vue中字符串换行不起作用 content字符串很...

  • Vue填坑记录

    记录使用Vue 2.6.11过程中遇到的一些问题及其解决办法 vue和vue-template-compile的版...

  • vue-fullpage.js 运行报错

    记录使用vue-fullpage.js遇到的问题。 github地址:https://github.com/alv...

  • vue2使用vue-echarts报错记录

    vue2使用vue-echarts报错记录 提示找不到vue-demi,tslib 以前使用vue-echarts...

  • vue使用el-checkbox-group

    前言   就今天,这个问题必须解决。这个问题必须记录。关于vue使用element-ui的el-checkbox-...

  • vite + vue3多页面配置记录references,loa

    目的:使用vite创建vue3项目记录细节点 上篇vue2/vue3 + webpack多页面遇到的问题和思考[h...

  • vue使用websocket问题记录

    最近笔者新参与的一个web项目,拟定采用vue2.0来编写,期间遇到有关使用websocket的问题,记录一下,个...

  • Vue-cli 踩坑

    记录Vue-cli时遇到的问题,方便大家寻找 搭建 如果遇到网络问题使用阿里镜像 npm config set r...

网友评论

    本文标题:Vue使用问题记录

    本文链接:https://www.haomeiwen.com/subject/lovqlqtx.html