1.provide

向当前组件所有子组件提供数据

2.inject

在子组件中注入父亲暴露的数据

  1. <div id="app">
  2. <login></login>
  3. </div>
  4. <template id="login">
  5. <div>
  6. <h1>子组件内容</h1>
  7. <p>{{msg}}</p>
  8. </div>
  9. </template>
  10. <script src="./js/vue.js"></script>
  11. <script>
  12. const login={
  13. template:"#login",
  14. //在孩子中通过inject来注入vm实例中暴露出来的数据
  15. inject:['msg'],
  16. }
  17. const vm=new Vue({
  18. el:"#app",
  19. data:{
  20. msg:"我是一个父组件传过来的内容"
  21. },
  22. components:{
  23. login
  24. },
  25. provide(){
  26. return {
  27. msg:this.msg
  28. }
  29. }
  30. })