使用汇总将svelte html文件导入js文件

时间:2017-10-09 12:35:55

标签: javascript rollupjs svelte

Js文件:

import template from './Template.html';

class VacationListForCompany extends HTMLElement {

constructor() {
    super();
    const root = this.attachShadow({mode:'open'});

    const t = new template({ target: root });

  }
}

window.customElements.define("vacation-list-for-company", 
VacationListForCompany);

Svelte / HTML文件

<h1> This is from SVELTE </h1>
<script>
    export default {
    };
</script>

在我的Rollupfile中     从'rollup-plugin-svelte'导入svelte;

export default {
   input: 'Widgets/VacationListForCompany/widget.js',
   output: {
      format: 'iife',
      file: 'dist/vacationlistforcompany.js',
  },
  plugins: [
    svelte({ include:'*.html'})
  ],
};

enter image description here

似乎rollup无法在导入时生成svelte组件。 我在这里想念一些东西吗?

2 个答案:

答案 0 :(得分:0)

默认情况下,Svelte将HTML文件编译为Svelte组件。 See the docs for the Svelte component API

要生成自定义元素,您需要将customelement: true传递给编译器(在您的情况下,通过在传递给rollup-plugin-svelte的选项中设置它)。 See PR 797

答案 1 :(得分:0)

这是我身边的错误......

svelte({ include:'*.html'}) 

由于某种原因拼写错误,删除它使它工作..