javascript Vue uni-appvuevue开发干货

一个基于Vue的门户网站(经验踩坑)

2019-06-24  本文已影响312人  Codeismylife

在做项目中请必须熟知项目背景,项目需求,再去做技术选型!

使用框架时必须熟知框架指令特性!很重要;

兼容IE9以下低版本请不要使用Vue

Bootstrap+jQuery是很好的选择!

VUE进行开发实现双语言切换

库:          1.i18n(双语言切换);

                  2.vue-router(路由);

                  3.vuex(状态管理,需要进行双语言切换监听变化);

                  4.ElementUI(饿了么以电脑端为主得UI框架);

                  5.sass(css预处理);

                  6.echarts(需要K线图,个人推荐不要用echarts,太大);

                  7.axios(相对于fetch兼容性好,请求数据)

IE的坑:1.走马灯之前用的是swiper的,结果兼容性不好,4.0+兼容不好,3.0主要以移动端为主,

                之后换成了ElementUI的走马灯又引导出无法覆盖ElementUI的样式,因为VUE是默认全局覆盖局部,再加一个style,不要加scoped,ElementUI是全局引入!  解决问题。

                2.经验不足,IE9不支持flex,坑、坑、坑移动端写习惯了!

                3.多行文本省略只支持webkit内核浏览器,又是坑,用js控制长度搞定!

                4.低版本兼容引入babel-polyfill,将build webpack.base.conf.js里entry修改为entry: {'babel-polyfill': 'babel-polyfill',app: './src/main.js'},

            5.使用axios低版本兼容 es6-promise包,在main.js里引用

                import promise from 'es6-promise'

                promise.polyfill()

打包:1.history模式:需要服务器端配置请看官网https://router.vuejs.org/guide/essentials/history-mode.html#example-server-configurations;不需要改任何东西,路由里加mode:history即可

           2.hash模式:将config里index.js里的 assetsPublicPath: '/'   改为assetsPublicPath: './',即可访问静态资源;

           3.打包体积:将config里index.js里的productionSourceMap: true, 改为 productionSourceMap: false,或者待打包完之后手动删除Map文件;

            4.路由懒加载(具体看官网很简单);

            5.第三方包分离将build webpack.base.conf.js里添加

                    externals:{;

                        'echarts':"echarts"

                      },

            6.打包后css背景图无法访问,将build   utils.js里添加  publicPath: '../../',

        7.sass配置(webpack.base.conf.js)

    { test: /\.scss$/, loaders: ["style", "css", "sass"]},

如有写错的地方欢迎大家评论

上一篇下一篇

猜你喜欢

热点阅读