问题标签 [stenciljs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何将模板组件与普通 JS 自定义元素(Web 组件)一起使用?
我在使用 JS 自定义元素(Web 组件)和 stenciljs 组件并支持 IE11 和现代浏览器时遇到问题。
我已经下载了模板启动项目https://github.com/ionic-team/stencil-component-starter并尝试了以下代码:
我在 Chrome 中收到此错误:
未捕获的 TypeError:如果没有 new j 处的“new”,就无法调用类构造函数(custom-elements-es5-adapter.js:4)
如果不使用 polyfill,它在任何浏览器中都不起作用。
如何将模板组件与普通 JS 自定义元素(Web 组件)一起使用?
javascript - 模板组件方法定义
我在开发 stencil.js Web 组件时遇到问题。我有这个错误:
(索引):28 未捕获的类型错误:comp.hideDataPanel 不是 HTMLDocument 中的函数。((指数):28)
我想将我的模板组件集成到一个更大的 browserify 项目中
在此之前,我正在使用模板 server-dev 尝试以下 index.html
我的组件的方法似乎在 DomContentLoaded 事件中未解决,而在异步用户单击事件中解决了相同的方法。请注意,由于打字稿代码中的@Method(),用户可以使用 .hideDataPanel() 方法(如下所示:https ://stenciljs.com/docs/decorators )
为了将来的集成,我想在我的 Web 应用程序启动时绑定我的模板组件方法。我怎么做 ?我应该等待页面或组件生命周期中的特定事件来解决组件方法吗?
先感谢您
javascript - 如何在 Storybook React App 中嵌入 StencilJS 组件?
我正在尝试将Stencil和Storybook集成到同一个项目中。我一直在关注这个设置指南,但是其中一个步骤是将组件库发布到 NPM,这不是我想要的。
我有这个repo,我用组件库(src
文件夹)和这些组件的审阅者配置了 Storybook,它位于storybook
文件夹中。
问题是,当我使用 Stencil 编译组件并复制dist
Storybook 应用程序中的文件夹并导入组件时,没有任何渲染。使用自定义头部标签调整配置我能够正确导入它,但是没有应用样式。
当我打开网络面板时,导入组件时出现一些错误:
因此该组件存在于 DOM 中,但可见性设置为隐藏,我认为它在出现错误时会这样做。
这是组件au-button
:
这是我的组件的故事:
这些是 Storybook 应用程序中的脚本:
工作流程如下:
- 推出故事书
- 在组件中进行更改
- 执行构建命令
- 执行复制命令
另外,我想自动化开发人员体验,但在我先解决了这个问题之后。
关于我可能做错了什么的任何想法?
javascript - 错误:全局安装生成器模板后找不到模块“../utils/composeObjs”
我在https://github.com/AkashGutha/generator-stencil为 stenciljs 编写生成器
我有一个位于项目根目录的小型实用程序函数。它只是一个utils/composeObjects.js
导出一个函数的文件composeObjs
。我在生成器的所有子生成器中都使用了这个函数。我在这些地方使用它:
app/index.js
page/index.js
component/index.js
我正在使用本地测试我的生成器npm link
,然后当我yo stencil
在一个空文件夹中进行测试时,生成器可以正常工作。
但是,当我npm publish
尝试运行yo stencil
它时,它会引发以下错误。
搜索后我发现当全局安装包时 require 不能按预期工作。但是,我查看了 github 上的其他一些生成器,其中一些使用了某种 util 函数,并且在全局安装时它们工作正常。
我也怀疑这可能是因为运行的主模块是 main yeoman
,因为yo stencil
告诉yeoman cli
使用它generator
。
我需要摆脱这个错误也将是 niec 了解导致此模块错误的原因。
这是 github 问题:https ://github.com/AkashGutha/generator-stencil/issues/1
javascript - StencilJS 导出自定义类
有什么方法可以强制 StencilJS 导出枚举以便常规 JavaScript 代码使用?
生成的 JavaScript 文件仅导出组件类。
它不会导出使用 JavaScript 定义的其他类或枚举。
假设一个 Enum 在 TypeScript 中定义如下:
生成的 JavaScript 文件包含:
如何强制 StencilJS 将 ViewType 添加到导出的类型列表中?
angular - Angular Elements 和 Stencil 的技术概念
Angular Elements和Stencil的技术概念相似吗?
Angular Elements将是 Angular 6 中的一项新功能,您基本上可以将编写的 Angular 组件包装为 Web 组件。据我了解,生成的自定义元素只是通向 Angular 的桥梁,因此我们仍然必须发布 Angular。
另一方面,Stencil声称是生成 Web 组件的编译器。那么生成的自定义元素不仅仅是通向某物的桥梁吗?
我说对了吗?
javascript - 如何在 Stenciljs 中获取 DOM 元素?
我想像在原生 JS 中一样获取 DOM 元素。你如何在 Stencil 中做到这一点?getElementById
不起作用。
javascript - 使用 react 或 web 组件使用 javascript 数据块的最佳方式?
我将使用使用 Microsoft Behaviors 和 Data Islands 构建的遗留软件,自 IE 10 起不再支持两者。中间层将 xml 数据转换为“数据块”(如果 JavaScript 可以将元素的内容用作数据块,则src 属性被省略..)。不幸的是,这些数据块数不胜数,因此完全重写中间层或建立无服务器架构与后端接口是不可能的。一个干净的解决方案让我望而却步,任何人都可以想出一种方法来重用这些现有的数据块与现代框架,如反应,角度,vue,模具(通过网络组件的自定义元素)?
javascript - 在 stenciljs 中将值绑定为 html
我无法将带有自定义 html 的值呈现到元素中。前任:
捆绑:
我期待与JavaScript 中的innerHtml行为相同的东西。