Polymer 聚合物生成后未找到lit-element.js
我目前遇到一个问题,可能很简单,但我没有设法解决它 我有一个聚合物应用程序使用最新版本的lit元素(2.0.1) 不幸的是,在运行Polymer 聚合物生成后未找到lit-element.js,polymer,polymer-3.x,lit-element,Polymer,Polymer 3.x,Lit Element,我目前遇到一个问题,可能很简单,但我没有设法解决它 我有一个聚合物应用程序使用最新版本的lit元素(2.0.1) 不幸的是,在运行npm run build:static(其后面是polymer build)并使用npm run-serve:static(其后面是执行:polymer-serve-port 5000 build/es5 bundled)为其提供服务之后 lit-element.js不可用 如果我列出项目节点模块中的文件,我有: pxke@station:ls -1 node_mo
npm run build:static
(其后面是polymer build
)并使用npm run-serve:static
(其后面是执行:polymer-serve-port 5000 build/es5 bundled
)为其提供服务之后
lit-element.js不可用
如果我列出项目节点模块中的文件,我有:
pxke@station:ls -1 node_modules/lit-element/
CHANGELOG.md
lib
LICENSE
lit-element.d.ts
lit-element.d.ts.map
lit-element.js
lit-element.js.map
package.json
README.md
src
lit-element.js似乎在那里,在构建之后,如果我查看构建的node_模块,它不会被复制
g@station: ls -1 build/es5-bundled/node_modules/lit-element/
CHANGELOG.md
lib
LICENSE
lit-element.d.ts
lit-element.d.ts.map
lit-element.js.map
package.json
README.md
src
你知道为什么会这样吗?
先谢谢你。
祝你今天愉快
以下是一些额外信息:
package.json的依赖项部分
"dependencies": {
"@material/base": ">=0.3.6",
"@material/mwc-base": ">=0.3.6",
"@material/mwc-button": ">=0.4.0",
"@material/mwc-icon": ">=0.3.6",
"@material/mwc-ripple": ">=0.3.6",
"@material/ripple": ">=0.3.6",
"@polymer/app-layout": ">=3.0.0",
"@polymer/paper-button": ">=3.0.1",
"@polymer/polymer": ">=3.1.0",
"@webcomponents/webcomponentsjs": ">=2.2.4",
"browser-sync": "2.26.3",
"lit-element": ">=2.0.1",
"lit-html": ">=1.0.0",
"npm": "^6.9.0",
"pwa-helpers": "^0.9.0",
"redux": ">=4.0.0",
"redux-thunk": ">=2.3.0",
"reselect": "^4.0.0",
"sinon": "^4.5.0"
},
polymer.json
{
"entrypoint": "index.html",
"shell": "src/components/test-app.js",
"sources": [
"images/**/*"
],
"extraDependencies": [
"manifest.json",
"node_modules/@webcomponents/webcomponentsjs/**",
"node_modules/lit-element/**",
"node_modules/lit-html/**",
"node_modules/@material/mwc-button/**",
"node_modules/@material/mwc-base/**",
"node_modules/@material/base/**",
"node_modules/@material/mwc-ripple/**",
"node_modules/@material/ripple/**",
"node_modules/@material/mwc-icon/**",
"push-manifest.json"
],
"builds": [
{
"name": "esm-bundled",
"browserCapabilities": [
"es2015",
"modules"
],
"js": {
"minify": true
},
"css": {
"minify": true
},
"html": {
"minify": true
},
"bundle": true,
"addServiceWorker": true
},
{
"name": "es6-bundled",
"browserCapabilities": [
"es2015"
],
"js": {
"compile": "es2015",
"minify": true,
"transformModulesToAmd": true
},
"css": {
"minify": true
},
"html": {
"minify": true
},
"bundle": true,
"addServiceWorker": true
},
{
"name": "es5-bundled",
"js": {
"compile": "es5",
"minify": true,
"transformModulesToAmd": true
},
"css": {
"minify": true
},
"html": {
"minify": true
},
"bundle": true,
"addServiceWorker": true
}
],
"moduleResolution": "node",
"npm": true
}
通常,当您导入lit元素时,
Polymer build
可能会将lit元素代码捆绑到内置代码中。你可能看不到这条路。但是如果您想强制添加路径,那么您可以在fragments
下的polymer.json
文件中定义。例如:
polymer.json:
{
"entrypoint": "index.html",
"shell": "src/components/test-app.js",
"sources": [
"images/**/*"
],
"fragments": [
"node_modules/lit-element/**/*",
],
"sources": [
"images/**/*"
],
"extraDependencies": [
...
为什么所有这些节点模块都有额外的依赖项?如果lit-element.js确实导入到某个地方,则应将其复制到构建文件夹中。听起来它像是被捆绑了,但其他东西仍然直接引用它。@JustinFagnani谢谢你的反馈。你是对的,我无法完全解释它,只有当我将mwc按钮定义导入HTML页面时才会发生这种情况。正如这里被问到的:我已经把所有的东西都转移到组件中,它就像一个符咒。再次感谢你指出这一点。我试图通过添加所有库来修复问题,并检查剩余的404个库。祝你有愉快的一天!