是否可以将模块导入 Polymer 组件?
Is it possible to import modules into a Polymer component?
我想很好地封装我的聚合物组件,但现在如果我尝试将任何外部模块导入组件,我会收到 'import'.
的未定义错误
我使用 Webpack 来打包我的应用程序,但这只打包了我的 javascript 个文件。
有没有办法将我的 Polymer 组件封装到单个 html 文件中,或者我必须在导入时分离 js 部分?
示例:
<link rel="import" href="../bower_components/polymer/polymer.html">
<dom-module id="my-new-view">
<template>
<style>
</style>
<h1>New view</h1>
</template>
<script>
import { myConstant } from '../module.js'; //<---- this throws error for the import'
Polymer({
is: 'my-new-view'
});
</script>
</dom-module>
仅 Webpack
要让它像那样工作,您必须将 module.js
导出为库,以便它可以在 Webpack 之外使用。一旦它成为库的一部分并包含在全局范围内,您就可以像
一样访问它
var myConstant = Module.myConstant;
Polymer({
is: 'my-new-view'
});
将 JS 代码放在单独的文件中可能会容易得多。
参见 。
更清爽
另一种选择可能是 运行 https://github.com/PolymerLabs/crisper 在调用 webpack 之前检查您的代码。 Crisper 将从您的代码中删除 <script>
标签,并将它们转换为 JS
与 Webpack 兼容的文件。
我想很好地封装我的聚合物组件,但现在如果我尝试将任何外部模块导入组件,我会收到 'import'.
的未定义错误我使用 Webpack 来打包我的应用程序,但这只打包了我的 javascript 个文件。
有没有办法将我的 Polymer 组件封装到单个 html 文件中,或者我必须在导入时分离 js 部分?
示例:
<link rel="import" href="../bower_components/polymer/polymer.html">
<dom-module id="my-new-view">
<template>
<style>
</style>
<h1>New view</h1>
</template>
<script>
import { myConstant } from '../module.js'; //<---- this throws error for the import'
Polymer({
is: 'my-new-view'
});
</script>
</dom-module>
仅 Webpack
要让它像那样工作,您必须将 module.js
导出为库,以便它可以在 Webpack 之外使用。一旦它成为库的一部分并包含在全局范围内,您就可以像
var myConstant = Module.myConstant;
Polymer({
is: 'my-new-view'
});
将 JS 代码放在单独的文件中可能会容易得多。
参见
更清爽
另一种选择可能是 运行 https://github.com/PolymerLabs/crisper 在调用 webpack 之前检查您的代码。 Crisper 将从您的代码中删除 <script>
标签,并将它们转换为 JS
与 Webpack 兼容的文件。