代码之家  ›  专栏  ›  技术社区  ›  ParisNakitaKejser

组件加载导致“尚未为上下文加载模块名”

  •  0
  • ParisNakitaKejser  · 技术社区  · 6 年前

    我想了解更多关于虚拟用户.js,但我在和一个问题斗争。我正在尝试使用.vue文件,以便在该文件中包含模板代码。我的html代码如下所示。

    <!DOCTYPE html>
    <html lang="en" dir="ltr">
      <head>
        <meta charset="utf-8">
        <title></title>
    
        <script src="vue.js"></script>
        <script src="require.js"></script>
      </head>
      <body>
        <div id="app">
          <navbar-component></navbar-component>
        </div>
        <script src="./main.js"></script>
    
      </body>
    </html>
    

    Vue.component('navbar-component', {
      template: '<h3>Title</h3>'
    });
    
    const demo = new Vue({
      el: '#app',
      mounted() {
        console.log('mounted');
      }
    });
    

    问题是当我把它改成使用这个JavaScript时。当我试图从我的测试.vue文件,它不再工作,我得到这个错误。

    require.js:168 Uncaught Error: Module name "src/components/test.vue" has not been loaded yet for context: _. Use require([])
    https://requirejs.org/docs/errors.html#notloaded
        at makeError (require.js:168)
        at Object.localRequire [as require] (require.js:1436)
        at requirejs (require.js:1797)
        at main.js:1
    

    我的最终测试代码如下所示:

    Vue.component('navbar-component', require('./src/components/test.vue'));
    
    const demo = new Vue({
      el: '#app',
      mounted() {
        console.log('mounted');
      }
    });
    

    src/组件/测试.vue

    <template>
      <div class="helloworld">
          <h1>Hello world</h1>
      </div>
    </template>
    
    <script>
    </script>
    
    0 回复  |  直到 6 年前