Aurelia:自定义元素不会按预期呈现输出。浏览器不加载js文件。

时间:2016-03-27 02:48:37

标签: javascript file components aurelia

我正在尝试使用aurelia设计自定义元素,但我一遍又一遍地运行相同的问题:浏览器加载组件的html文件,但不加载其兄弟的js文件。我使用的是es2016入门套件1.0.0-beta.1.2.0,jspm 0.16.15和npm 2.11.2

具体来说,考虑(非常)简单的例子。该组件(如预期的那样)称为test,其html和js文件分别如下所示:

的test.html:

<template>
<div>Name: ${name}</div>`
</template>`

test.js

import {bindable} from 'aurelia-framework';
export class Test {
@bindable name = "";
}

该组件是从app.html文件中调用的,属性名称的值设置为app.js,如下所示:

app.html:

<template>
<require from="bootstrap/css/bootstrap.css"></require>
<require from="./test.html"></require>

<div class="page-host">
      <test name.bind="name"></test>
</div>
</template>

app.js:

export class Welcome {
   name = 'My Test';
}

在运行本地服务器之后,输出就是:

名称:

预期输出为:名称:我的测试。

我注意到了什么: 1)如果我去google chrome的开发工具中的文件夹dist,我看到加载了以下文件:app.html; app.js和test.html。 也就是说,test.js根本就不会出现在那里。 2)如果写test.html如下:

 <template bindable="name">
 <div>Name: ${name}</div>
 </template>

我有预期的输出:姓名:我的测试

我应该错过一些我无法弄清楚的傻​​事。有关可能发生的事情的任何提示? TXS

1 个答案:

答案 0 :(得分:4)

您告诉加载程序仅在导入结束时附加equalTo()时加载html文件 -

.html

你需要删除它 -

<require from="./test.html"></require>