错误的,报错信息TypeError: Cannot read properties of undefined (reading ‘__vccOpts’)
实际上是在提示导入模块的方式有误
正确的方法是将import写在main.js内而不是app.vue内
@是v-on,是当某个事件触发的时候,是绑定事件、函数的;
:是v-band,是绑定属性、变量的。
import from ‘..’和’.’有啥区别
.是当前目录
..是上一层目录
那@/与../有什么区别呀?有时import时编译器会自动补偿代码,路径是@/打头的。并且import后面有分号;,y总有时写分号有时没写分号。求教一下这两种情况那种写法更为标准一些呀?
@代表的是/src,../是当前目录的上一层目录,建议都加上分号
从父组件向子组件传递值的方式(通过props):
1.首先需要在父组件UserProfileView里面的template里面给UserProfileInfo标签绑定一个属性
2.绑定完之后如果想在子组件里接收到这个数值的话,需要在子组件的script里面定义一个props,然后将这个属性定义在props里面,那么我们就可以把这个属性值传过来了
3.传过来之后我们的全名是被动态的算出来的,当我们的lastName或者firstName修改之后,他就会重新计算fullName
我们需要修改状态的时候,状是传过来的,状态信息是在user里面,但是user是被定义到了父组件里面,所以子租金要修改的话,不能直接在子组件里修改,状态在哪定义的在哪修改,所以这里需要涉及到子组件向父组件传递信息,通过绑定事件的方法
如果子组件想修改父组件里的信息的话,需要通过触发父组件里绑定的函数来去实现,触发父组件里绑定的函数:context.emit():触发父组件绑定的函数
另外需要一个触发函数,当我们click的时候需要把内容发成一个帖子
点完发帖之后需要将内容真的发到这个帖子里面:
帖子的值是存到了他的父组件里面,涉及到子组件向父组件传递信息,用触发函数的方法来传递,
- 在父组件里先实现一个函数
2.将函数返回出去,然后就可以将这个函数绑定成一个事件(在UserProfileView里的UserProfileWrite组件上) - 当我们点click的时候就自动触发post_a_post事件,context.emit():触发父组件绑定的函数(在UserProfileWrite里的setup里的post_a_post)
vuex可以维护全局变量,由于当前登录的用户的信息会在多个组件里被用到,所以可以将登录的用户的信息存到vuex里面