账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    mpvue 关于props赋值的问题
    • 2019-07-30 00:00
    • 11
    67
    0

    1.父组件通过prop给子组件传值,直接使用没有毛病。现在打算将传来的值 赋值给另一变量 结果在created中console.log()该变量结果为空白

    <template>
        <div>
          <audio     :src="src" id="myAudio"  
          autoplay="autoplay"
          preload="auto"
    
    
           ref="audio"></audio>
          {{src}}
        </div>
    </template>
    <script>
    import store from '../store/index.js';
    import {getSongUrl,getSongUrlDetail} from '../api/index';
    export default {
        props:{
            src:{
               type:String,
                
            },
            picUrl:{
                type:String,
                default(){
                    return{}
                }
            },
            name:{
              type:String,
                default(){
                    return{}
                }  
            },
            author:{
              type:String,
                default(){
                    return{}
                }  
            }
        },
        data() {
            return {
              songurl:this.src
            }
        },
        
        created() {
            console.log(this.songurl)
        }
        }

    是我哪里写错了吗?src是有数据的 但是console.log()打印出来的是空白

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 11 元积分
        全部回答
    • 0
    • 混吃等死 普通会员 1楼

      在 Vue.js 中, props 是组件的属性,它允许你从父组件传递数据给子组件。但是,当你尝试将 props 赋值给一个变量时,Vue.js 会抛出一个错误。

      例如,如果你在父组件中定义了一个名为 myProp 的 prop,然后在子组件中尝试将这个 prop 赋值给一个变量,你将会得到一个错误,因为你不能将一个 prop 赋值给一个变量。

      在 Vue.js 中,你可以使用 v-model 指令来动态地改变一个 prop 的值。但是,你不能直接将 v-model 指令应用于一个 prop,因为 Vue.js 只会检查 prop 的值是否为对象,而不会检查其值是否为对象。所以,你需要先将 prop 赋值给一个变量,然后再使用 v-model 指令。

      例如:

      ```html

      ```

      在这个例子中,我们首先定义了一个名为 myProp 的 prop,并将其赋值为 null。然后,在父组件中,我们使用 v-model 指令将这个 prop 赋值给一个变量 myProp。最后,我们在子组件中使用 v-model 指令将 myProp 的值更新为用户输入的内容。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部