解决办法,检查你的v-model绑定的值类型,我这里使用的是  van-checkbox-group 所以我应该绑定的是数组类型的数据,这样就解决了报错。

4. ForEach 和  for of 的又一区别(我之前不知道)

5.try catch的重要性

如果不给代码加上try catch,那么报错之后就不会继续向下执行,这和我们想象的不一样,所以用起来啊!!!!

6. 渲染错误:cannot read length of undefined

解决办法:给整体的代码加上v-if,这样没有数据就不会进行渲染。

7. 子组件和父组件 emit的方法 要用kab-case

@go-next="goEpDetail(enterprise.id)"

8. File .... is not a module

原因是script标签没有闭合

10. Vue warn]: Error in v-on handler: "TypeError: Cannot read property 'popup' of undefined"

9. (window/... as any)语句一定要加分号

10. config.xml中的版本号控制的时候安装时界面的版本号

main.ts中的版本号,是为了在本地记录 config.xml的上一个版本号,为了与后端的新安装包版本进行比较,判断是否可以更新,所以config.xml中的是最新版本号,我们与后端统一这个版本号,后端的版本号不会显示在界面,只是方便我们判断,是否可以更新。

所以我们前端只需要在config.xml中修改version 为最新版本号,main.ts中的version 为上一个config.xml中的版本号就行了。

11. 控制版本更新有两种办法

1. 在main.ts中在vue的原型上挂载,2 package.json、 vue.config.js文件 第二种办法还没参透。

12. 使用scss的minxin时记得要在vue.config.js中进行配置

module.exports = {    publicPath: '',    css: {        loaderOptions: {            sass: {                additionalData: '@import "@/styles/variables.scss";'            }        }    },}
此时我的scss的版本为:
 "sass": "^1.26.5", "sass-loader": "^10.0.1",

13. 使用&& ,||使代码更简洁

<span>{{myInfo.userExtend.address||'-'}}</span>  替代
逻辑或的短路特征,方便我们提供备用值。<span>{{selfInfo.userExtend.address?selfInfo.userExtend.address:'-'}}</span>逻辑与
if(data && data.length>0)逻辑与的短路特征,如果data为空,那么就不会做data.length的判断了

14. 如果在babel.config.js中配置了局部引入ui组件,那么全局引入的时候就会报错,比如ViewUI is undefined

babel.config.js
[            "import",            {                "libraryName": "view-design",                "libraryDirectory": "src/components"            },            "view-design"        ],        [            "import",            {                "libraryName": "iview",                "libraryDirectory": "src/components"            },            "iview" ],

15. cordova 打包问题 运行"cordova run android" 出现报错

No Java files found which extend CordovaActivity.

解决办法: 删除platforms再重新cordova add platform android.

All you need to do is remove platform cordova platform rm android and re-add platform by typing cordova platform add android, and the error goes away.!!!

可能在进行完这步后在打包会报 AndroidManifest.xml这里面的问题,按提示操作即可。

16. 第三方app调微信登陆

config.xml,AndroidManifest.xml中的包名要跟微信中申请时填写的包名一致 ,如果微信开发(还是公众?搞不清楚)平台中的 app包名与现在打包的apk一致,那么签名也就会一致。

17. 怎么判断第三方app有没有成功授权微信登录

要结合两个地方看:

第一个:我---隐私--授权管理

第二个:我--账号与安全---微信安全中心---注销账号 就可以看到自己绑定的程序--点击返回即可!

18. [vue-router] Named Route 'authox用户管理' has a default child route. When navigating to this named route (:to="{name: 'authox用户管理'"), the default child route will not be rendered. Remove the name from this route and use the name of the default child route for named links instead.

不用:to="{name=""}" 直接使用path

19. cordova app 打包正式版app时,最后一步签名的时候,报密码输入错误,这个时候 npm run serve 一下,再次执行签名命令就好了!!!!虽然不知道为啥。

20. 表单组件记得做输入限制,比如maxlength

21. axios的delete body传参 血泪史,与post中的body不同,直接写会识别不到,需要这样写 用{data:}包裹起来,我这个菜鸡

22. npm 安装依赖

报错如下:

解决办法,重新切换一个cmd窗口,再npm i  即可

百度上的说法是  以管理员身份运行cmd命令,切换到淘宝镜像

  • 最近两周出去面试遇到的面试题(前端初级、长更)
  •