【vue学习】开发过程中碰到的一些问题

2020-04-15  本文已影响0人  前端菜篮子

问题1Vue 无法读取HTMLCollection列表的length解决

mounted阶段,获取Element对象,console.log()可以读取出列表,而却无法读出它的length。代码如下

let elem = this.$refs.menuWrapper
let foodList = elem.getElementsByClassName('calculate-content')
console.log(foodList)
console.log(foodList.length)
demo

原因
el 被新创建的 vm.$el 替换,并挂载到实例上去之后调用该钩子。如果 root 实例挂载了一个文档内元素,当 mounted 被调用时 vm.$el 也在文档内。

注意 : mounted 不会承诺所有的子组件也都一起被挂载。如果你希望等到整个视图都渲染完毕,可以用 vm.$nextTick

mounted () {
  this.$nextTick(function () {
    // Code that will run only after the
    // entire view has been rendered
  })
}

问题2:点击某个按钮,打开一个新的路由(原来窗口/新窗口)

vue中使用 this.$router.push({ path: '/yourRoute' }) 默认是替代本窗口

如果想新开一个窗口,可以使用下面的方式:

let routeData = this.$router.resolve({ path: '/yourRoute', query: {  id: 1 } });
window.open(routeData.href, '_blank');

问题3:引入静态文件

引入static(public)下的文件:本人的工程下:路径最前面的需要有 /

看到有人的写法是没有 / 也是可以的,开始自己引入没注意,
也按照他的写法,结果一直报 404 不知道是否哪里做了设置

我的index.html中引入静态文件(有上级目录的情况下)怎么都引不成功呢?

后面再看看这个问题,再来补充下......


问题4:

上一篇 下一篇

猜你喜欢

热点阅读