VueJS - 1个文件中的2个控制器

时间:2016-10-26 09:25:16

标签: cakephp vue.js

如何让2个控制器在1个视图中工作?

例如,这是我的简化视图(使用CakePHP 3'元素页面渲染):

<div id="main">
    <div id="sub">
        <?= $this->element('main/sub'); ?>
    </div>
</div>

控制器(我使用requirejs):

require(['jquery', 'vue'], function ($, Vue) {
    return new Vue({
        el: '#main',
        data: {
        },
    });
});

require(['jquery', 'vue'], function ($, Vue) {
    return new Vue({
        el: '#sub',
        data: {
        },
    });
});

我一直收到此错误,#sub中的数据不会在DOM中呈现。

  

vue.js:1141 [Vue警告]:避免在表达式中使用保留关键字:   返回false;

我是VueJs的新手,所以我不确定这是否是正确的设置。

1 个答案:

答案 0 :(得分:0)

requirejs.config({
    BaseUrl: 'js', // App Base URL
    paths: {
        vue: 'lib/vue', // /js/lib/Vue.js Library
        component1: 'components/component1', // /js/components/component1.js
        component2: 'components/component2' // /js/components/component2.js
    }
});

require(['vue', 'component1', 'component2'], function(Vue, C1, C2){

    var app = new Vue({
        el: '#app',
        data: {},
        components: {
          component1: C1,
          component2: C2
        }
     });
});

HTML:

<div id="app">
  <component1></component1>
  <component2></component2>
</div>