vue项目开发遇到的问题总结(1)

1.在vue框架中使用axios获取数据中有16位的数字,精度丢失,导致错误问题。

如果想获取原来的值的方式,后台改字符串传到前端。

比如下面的例子

后台给的数字: 990062752457637888

前端获取到的数字:990062752457637900

那么我们使用  parseFloat(value).toPrecision(18)的方式,18是总位数,可使前端获取的

parseFloat(990062752457637900).toPrecision(18) = 990062752457637888

2.vue模板Element UI中组件scoped属性问题

因为element Ui自动生成的标签没有scoped的id,所以就不生效了,去掉scoped,就会发现样式生效了。

3.压缩js文件,比如压缩UEditor中的某一个js文件

首先安装uglifyJs:

用NPM安装CLI:

npm install uglify-js -g

用NPM下载给程序使用:

npm install uglify-js -D

或者使用

yarn add uglify-js -D

然后可以在命令行运行,比如在我的项目路径:

uglifyjs --output ./static/ueditor/ueditor.all.min.js ./static/ueditor/ueditor.all.js

命令行

这样就会生成一个ueditor.all.min.js文件。

4、组件之间传值

1.如果是父子组件:

      直接使用props传值


2.非父子组件:

     2.1 如果两个组件都存在,可以使用eventBus。


     2.2 如果两个组件不是同时都被渲染。就使用vuex,状态管理机。


5.axios文件上传

let formData = new FormData();

formData.append("file", fileObject);

传到后台为FormData,这里fileObject document.getElementById("file").files[0]  原生的input[type='file']。

需要设置 { headers: { 'Content-Type': 'multipart/form-data' } } header头部为这个。 具体可参见:【文件上传与下载】

6.element-ui 给页面上的DOM元素加loading效果

如下:

const loading = this.$loading({

      lock: true,

      text: 'Loading',

      spinner: 'el-icon-loading',

      background: 'rgba(0, 0, 0, 0.7)',

      target: document.querySelector('.div')

    });

    setTimeout(() => {      loading.close();    },2000);

7.vue中使用v-html渲染出来的数据不会换行问题

有可能需要设置class属性 外层添加class,或者添加样式如下:

 white-space: pre-wrap;



未完待续。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 第3章 基本概念 3.1 语法 3.2 关键字和保留字 3.3 变量 3.4 数据类型 5种简单数据类型:Unde...
    RickCole阅读 10,734评论 0 21
  • 我还是很喜欢你,像风走了八千里,不问归期。 我还是很喜欢你,像日月轮回交替,不理朝夕。 我还是很喜欢你,像云漂泊九...
    苏小碧阅读 3,558评论 0 8
  • 中午孩子上学走后,我躺沙发上正迷糊,手机响起,儿子的声音:妈妈,我手臂被小刀划到了,你带我去缝针。我一惊,呃?怎么...
    晚星不晓晨阅读 3,269评论 1 3
  • 我敬爱的人 时间:2016年11月29号 “我敬爱的人”这个老的不能再老的话题,今天我还要第三次说一遍。也许还有第...
    深山起风兰兰阅读 4,075评论 3 15

友情链接更多精彩内容