reactive-extensions-js 相关问题


Angular Reactive Form - 验证在 formGroup 中不起作用

我定义了这个表单组 获取 createItem(): FormGroup { 返回 this.formBuilder.group({ 名称:['',验证器.required], 电子邮件:['',验证器.required], 手机:[...


我可以通过单击重新加载扩展在本地模拟更新过程吗?

单击重新加载(在 chrome://extensions 中)与 chrome 扩展自动更新时相同吗? 我想避免 chrome 网上应用店更新过程等待 60 分钟。


Spring Reactive 使用 ServerRequest 获取正文 JSONObject

我是春季反应新手。 我正在尝试使用邮递员从服务器获取请求信息。 首先,postman使用post方法向服务器发送信息。 其次,我们一直在努力...


Spring Cloud Gateway 返回 404 未找到错误

我尝试使用 Reactive 和 MVC Spring Cloud API 网关,但在两次尝试中我都在 Postman 中收到 404 Not Found 错误响应。 我只有一个用户服务和一个发现服务器(尤里卡)...


使用 Shopify Checkout Extensions 在结帐感谢页面上访问订单 ID 或结帐令牌

我正在使用 Shopify 的结账 UI 扩展,并做出反应,在“谢谢”页面上添加“您是如何听说我们的”表单。我已经弄清楚如何渲染表单并从


Firebase Extensions 使用 AngularFire 调整图像大小后如何获取新的下载 URL?

在 Firebase 扩展调整图像大小后,需要帮助获取调整图像大小 URL。 在我能够使用下面的代码执行此操作之前。但是,激活该功能后,图像不显示...


从后台js到内容js的sendMessage不起作用,但内容js到后台js可以工作

content.js chrome.runtime.onMessage.addListener( (请求,发送者,发送响应)=>{ console.log("消息已收到"); console.log(请求、发送者、sendResponse); ...


Vue 3如何获取$children的信息

这是我在 Tabs 组件中使用 VUE 2 的旧代码: 创建(){ this.tabs = this.$children; } 标签: .... 这是我在 Tabs 组件中使用 VUE 2 的旧代码: created() { this.tabs = this.$children; } 标签: <Tabs> <Tab title="tab title"> .... </Tab> <Tab title="tab title"> .... </Tab> </Tabs> VUE 3: 如何使用组合 API 获取有关 Tabs 组件中子项的一些信息?获取长度,迭代它们,并创建选项卡标题,...等?有任何想法吗? (使用组合API) 这是我现在的 Vue 3 组件。我使用 Provide 来获取子 Tab 组件中的信息。 <template> <div class="tabs"> <div class="tabs-header"> <div v-for="(tab, index) in tabs" :key="index" @click="selectTab(index)" :class="{'tab-selected': index === selectedIndex}" class="tab" > {{ tab.props.title }} </div> </div> <slot></slot> </div> </template> <script lang="ts"> import {defineComponent, reactive, provide, onMounted, onBeforeMount, toRefs, VNode} from "vue"; interface TabProps { title: string; } export default defineComponent({ name: "Tabs", setup(_, {slots}) { const state = reactive({ selectedIndex: 0, tabs: [] as VNode<TabProps>[], count: 0 }); provide("TabsProvider", state); const selectTab = (i: number) => { state.selectedIndex = i; }; onBeforeMount(() => { if (slots.default) { state.tabs = slots.default().filter((child) => child.type.name === "Tab"); } }); onMounted(() => { selectTab(0); }); return {...toRefs(state), selectTab}; } }); </script> 选项卡组件: <script lang="ts"> export default defineComponent({ name: "Tab", setup() { const index = ref(0); const isActive = ref(false); const tabs = inject("TabsProvider"); watch( () => tabs.selectedIndex, () => { isActive.value = index.value === tabs.selectedIndex; } ); onBeforeMount(() => { index.value = tabs.count; tabs.count++; isActive.value = index.value === tabs.selectedIndex; }); return {index, isActive}; } }); </script> <template> <div class="tab" v-show="isActive"> <slot></slot> </div> </template> 哦伙计们,我解决了: this.$slots.default().filter(child => child.type.name === 'Tab') 对于想要完整代码的人: 标签.vue <template> <div> <div class="tabs"> <ul> <li v-for="tab in tabs" :class="{ 'is-active': tab.isActive }"> <a :href="tab.href" @click="selectTab(tab)">{{ tab.name }}</a> </li> </ul> </div> <div class="tabs-details"> <slot></slot> </div> </div> </template> <script> export default { name: "Tabs", data() { return {tabs: [] }; }, created() { }, methods: { selectTab(selectedTab) { this.tabs.forEach(tab => { tab.isActive = (tab.name == selectedTab.name); }); } } } </script> <style scoped> </style> 标签.vue <template> <div v-show="isActive"><slot></slot></div> </template> <script> export default { name: "Tab", props: { name: { required: true }, selected: { default: false} }, data() { return { isActive: false }; }, computed: { href() { return '#' + this.name.toLowerCase().replace(/ /g, '-'); } }, mounted() { this.isActive = this.selected; }, created() { this.$parent.tabs.push(this); }, } </script> <style scoped> </style> 应用程序.js <template> <Tabs> <Tab :selected="true" :name="'a'"> aa </Tab> <Tab :name="'b'"> bb </Tab> <Tab :name="'c'"> cc </Tab> </Tabs> <template/> 我扫描子元素的解决方案(在对 vue 代码进行大量筛选之后)是这样的。 export function findChildren(parent, matcher) { const found = []; const root = parent.$.subTree; walk(root, child => { if (!matcher || matcher.test(child.$options.name)) { found.push(child); } }); return found; } function walk(vnode, cb) { if (!vnode) return; if (vnode.component) { const proxy = vnode.component.proxy; if (proxy) cb(vnode.component.proxy); walk(vnode.component.subTree, cb); } else if (vnode.shapeFlag & 16) { const vnodes = vnode.children; for (let i = 0; i < vnodes.length; i++) { walk(vnodes[i], cb); } } } 这将返回子组件。我对此的用途是我有一些通用的对话框处理代码,用于搜索子表单元素组件以咨询其有效性状态。 const found = findChildren(this, /^(OSelect|OInput|OInputitems)$/); const invalid = found.filter(input => !input.checkHtml5Validity()); 如果你复制粘贴与我相同的代码 然后只需向“选项卡”组件添加一个创建的方法,该方法将自身添加到其父级的选项卡数组中 created() { this.$parent.tabs.push(this); }, 使用脚本设置语法,您可以使用useSlots:https://vuejs.org/api/sfc-script-setup.html#useslots-useattrs <script setup> import { useSlots, ref, computed } from 'vue'; const props = defineProps({ perPage: { type: Number, required: true, }, }); const slots = useSlots(); const amountToShow = ref(props.perPage); const totalChildrenCount = computed(() => slots.default()[0].children.length); const childrenToShow = computed(() => slots.default()[0].children.slice(0, amountToShow.value)); </script> <template> <component :is="child" v-for="(child, index) in childrenToShow" :key="`show-more-${child.key}-${index}`" ></component> </template> 我对 Ingrid Oberbüchler 的组件做了一个小改进,因为它不支持热重载/动态选项卡。 在 Tab.vue 中: onBeforeMount(() => { // ... }) onBeforeUnmount(() => { tabs.count-- }) 在 Tabs.vue 中: const selectTab = // ... // ... watch( () => state.count, () => { if (slots.default) { state.tabs = slots.default().filter((child) => child.type.name === "Tab") } } ) 我也遇到了同样的问题,在做了很多研究并问自己为什么他们删除了$children之后,我发现他们创建了一个更好、更优雅的替代方案。 这是关于动态组件的。 (<component: is =" currentTabComponent "> </component>). 我在这里找到的信息: https://v3.vuejs.org/guide/component-basics.html#dynamic-components 希望这对你有用,向大家问好!! 我发现这个更新的 Vue3 教程使用 Vue 插槽构建可重用的选项卡组件对于与我相关的解释非常有帮助。 它使用 ref、provide 和ject 来替换我遇到同样问题的this.tabs = this.$children;。 我一直在遵循我最初发现的构建选项卡组件(Vue2)的教程的早期版本创建您自己的可重用 Vue 选项卡组件。 根据 Vue 文档,假设您在 Tabs 组件下有一个默认插槽,您可以直接在模板中访问该插槽的子级,如下所示: // Tabs component <template> <div v-if="$slots && $slots.default && $slots.default()[0]" class="tabs-container"> <button v-for="(tab, index) in getTabs($slots.default()[0].children)" :key="index" :class="{ active: modelValue === index }" @click="$emit('update:model-value', index)" > <span> {{ tab.props.title }} </span> </button> </div> <slot></slot> </template> <script setup> defineProps({ modelValue: Number }) defineEmits(['update:model-value']) const getTabs = tabs => { if (Array.isArray(tabs)) { return tabs.filter(tab => tab.type.name === 'Tab') } else { return [] } </script> <style> ... </style> 并且 Tab 组件可能类似于: // Tab component <template> <div v-show="active"> <slot></slot> </div> </template> <script> export default { name: 'Tab' } </script> <script setup> defineProps({ active: Boolean, title: String }) </script> 实现应类似于以下内容(考虑一组对象,每个部分一个,带有 title 和 component): ... <tabs v-model="active"> <tab v-for="(section, index) in sections" :key="index" :title="section.title" :active="index === active" > <component :is="section.component" ></component> </app-tab> </app-tabs> ... <script setup> import { ref } from 'vue' const active = ref(0) </script> 另一种方法是使用 useSlots,如 Vue 文档(上面的链接)中所述。 在 3.x 中,$children 属性已被删除并且不再受支持。相反,如果您需要访问子组件实例,他们建议使用 $refs。作为数组 https://v3-migration.vuejs.org/writing-changes/children.html#_2-x-syntax 在 3.x 版本中,$children 已被删除且不再受支持。使用 ref 访问子实例。 <script setup> import { ref, onMounted } from 'vue' import ChildComponent from './ChildComponent .vue' const child = ref(null) onMounted(() => { console.log(child.value) // log an instance of <Child /> }) </script> <template> <ChildComponent ref="child" /> </template> 详细信息:https://vuejs.org/guide/essentials/template-refs.html#template-refs 基于@Urkle的回答: /** * walks a node down * @param vnode * @param cb */ export function walk(vnode, cb) { if (!vnode) return; if (vnode.component) { const proxy = vnode.component.proxy; if (proxy) cb(vnode.component.proxy); walk(vnode.component.subTree, cb); } else if (vnode.shapeFlag & 16) { const vnodes = vnode.children; for (let i = 0; i < vnodes.length; i++) { walk(vnodes[i], cb); } } } 除了已接受的答案之外: 而不是 this.$root.$children.forEach(component => {}) 写 walk(this.$root, component => {}) 这就是我让它为我工作的方式。


JS对象变量作为键值赋值

这个语法在JS中是如何调用的: 让名称=“asdf”; 让 obj = { 名称 }; // <-- this


为什么每次我尝试将应用程序从 Anypoint Studio 部署到 CloudHub 时,我的 pom.xml 文件都会更新?

我的 pom.xml 文件中有以下部分用于我正在执行的虚拟项目: org.mule.tools.maven mule-maven-插件 我正在做的一个虚拟项目的 pom.xml 文件中有以下部分: <plugin> <groupId>org.mule.tools.maven</groupId> <artifactId>mule-maven-plugin</artifactId> <version>${mule.maven.plugin.version}</version> <extensions>true</extensions> <configuration> <classifier>mule-application</classifier> </configuration> </plugin> 每当我尝试直接从 Studio 将应用程序部署到 CloudHub 时,上面的部分就会更改为以下部分: <plugin> <groupId>org.mule.tools.maven</groupId> <artifactId>mule-maven-plugin</artifactId> <version>${mule.maven.plugin.version}</version> <extensions>true</extensions> <configuration> <classifier>---- select project type ----</classifier> </configuration> </plugin> 然后部署失败并出现以下错误: Publication status: error [INFO] ------------------------------------------------------------ [INFO] Steps: [INFO] - Description: Publishing asset [INFO] - Status: error [INFO] - Errors: [The asset is invalid, Error while trying to set type: app. Expected type is: rest-api.] [INFO] ......................................... [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 02:33 min [INFO] Finished at: 2024-01-08T14:11:31+05:30 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.mule.tools.maven:exchange-mule-maven-plugin:0.0.17:exchange-deploy (default-exchange-deploy) on project super-biodata-sapi: Exchange publication failed: Publication ended with errors: [The asset is invalid, Error while trying to set type: app. Expected type is: rest-api.] -> [Help 1] 这可能是什么原因? 以下是一些细节: Anypoint Studio版本:7.16.0 Maven版本:3.8.8 Mule 运行时版本:4.4.0 Mule Maven 插件版本:3.8.0/4.0.0(两者都尝试过) Java版本:OpenJDK 11.0.9 我以前使用过 Anypoint Studio 7.15,在那里完全相同的项目没有任何问题。但更新后,我遇到了很多问题。 我还尝试使用“rest-api”而不是“mule-application”。然后,首先在部署开始时,“rest-api”更改为“mule-application”,然后再次更改为“----选择项目类型----”,最后失败。 我怀疑存在混乱。您提到您正在尝试将 Mule 4 应用程序部署到 CloudHub,但对资产的引用和错误消息与将资产发布到 Any point Exchange 相关。 CloudHub是一个部署和执行Mule应用程序的云平台。 Anypoint Exchange 是资产存储库,包括 REST API 的定义,但不包括 Mule 4 应用程序,也不用于执行任何操作。有关有效资产的详细信息,请参阅文档。 由于 mule-application 不是发布到 Exchange 的有效资产类型(对于 Mule 4),那么 Studio 似乎试图让您更改为有效的资产类型。 如果您尝试部署到 CloudHub,请参阅文档了解不同的方法。


为什么我的 React 应用程序在 http://localhost:3000/static/js/bundle.js 处显示错误

启动我的 React 应用程序时收到以下消息: 错误[对象对象]在handleError(http://localhost:3000/static/js/bundle.js:56279:58)在http://localhost:3000/static/js/bundl...


自动完成功能不适用于 VSCode 中的 TypeScript + Node

所以如果我编写纯 JS (.js),它的工作方式如下: 但对于 TypeScript (.ts) 它不起作用:


Next JS Link 标签有时会从动态路由中删除“/”

我正在使用 Next JS 12.2.0。我有如下链接标签, {帖子标题} 问题是某些 href 结尾有


这个curl命令的node js等效项是什么?

我有这个curl命令,我需要在node js中编写: 卷曲-X POST \ https://image.adobe.io/pie/psdService/renditionCreate \ -H“授权:不记名$令牌”\ -H“x-api-...


如何在p5.js和matter.js中用图像填充形状

我正在尝试使用 p5.js 和 Matter.js var Engine = Matter.Engine, 世界=物质.世界, 身体=物质.身体, 事件 = 事情.事件, 身体=妈...


Jekyll kramdown:如何禁用在表格中生成样式?

我有带有标准 Markdown 表的 Markdown 文件: | AAA | BBB | |:---:|:---:| | 1 | 2 | | 3 | 4 | Jekyll 渲染得很好,但添加了 text-align: center; td 的风格: ... 我有带有标准 Markdown 表的 Markdown 文件: | AAA | BBB | |:---:|:---:| | 1 | 2 | | 3 | 4 | Jekyll 渲染得很好,但在 text-align: center; 的风格中添加了 td: <table> <thead> <tr> <th style="text-align: center">AAA</th> <th style="text-align: center">BBB</th> </tr> </thead> <tbody> <tr> <td style="text-align: center">1</td> <td style="text-align: center">2</td> </tr> <tr> <td style="text-align: center">3</td> <td style="text-align: center">4</td> </tr> </tbody> </table> 如何禁用此功能,以便 jekyll 不向表格元素添加任何样式? 谢谢你的帮助 我有 Jekyll 4.3.2,这是我的 _config.yml 的内容: highlighter: rouge markdown: kramdown kramdown: extensions: - Hard_wrap - no_intra_emphasis - strikethrough - fenced_code_blocks - autolink - with_toc_data - highlight - footnotes input: GFM sass: style: :compressed permalink: "/:title/" slugify: "pretty" 解决方案是从 hrader 分隔符中删除冒号: | AAA | BBB | |-----|-----| | 1 | 2 | | 3 | 4 |


Odoo 15:覆盖已经通过 override 添加的 JS 功能

我正在尝试重写 Odoo 15 JS 函数,该函数已通过 Odoo 源代码中的 override 添加。 我说的是“_getLinesToAdd”函数 这是由“pos_coupon&qu...


在JS中解析JSON字符串[已关闭]

在JS文件中我有: {html: '测试代码 HTML', css: '测试代码 CSS'} 我如何解析它以获得 html 和 css 的值? 这是我尝试过的: const json = JSON.parse(数据); 反对...


Framer-motion导入中断页面下一个Js

嗨,我正在尝试将框架运动导入到 Next Js 中的页面中。 从“framer-motion”导入{motion} 这会破坏页面。我在终端中收到以下错误: /用户/.../站点/.../


javascript中有XNOR运算符吗

我是js新手,我想知道JS中是否有XNOR运算符。我尝试了 !(a^b) 但它给出了奇怪的结果。例如: var a,b=“aa”; ^b 这段代码返回 true,但是 I XNOR 返回 false。 上...


JS现在支持多线程了吗?

我正在仔细阅读一些答案,但它们已经很旧了。有人知道这方面的最新进展吗? 另外,JS 在不久的将来有可能变成多线程吗? 罗...


如何使用Word js更新DocProperty字段

我正在使用 Word js 1.3 开发 Office 2016 Addin。该插件允许定义自定义属性并保存它们的值。 我想在我的插件的 UI 中添加一个按钮来更新


searchble选择输入react js

嗨,当我向 React js TextField 组件添加选择时,我遇到问题,不允许输入,因此为了允许输入,我必须将选择设置为 false,但这不会打开包含...的下拉列表


如何在 Primereact (JS) 中更改 TabPanel (TabView) 的内容背景颜色?

如何更改 Primereact (JS) 中 TabPanel (TabView) 的内容背景颜色?理想情况下是页面的基本背景颜色,这里是黑色(我猜)。我想我必须修改...


如何使用 rusty_v8 处理异步操作

我正在尝试在 v8 (rusty_v8) 之上开发一个简单的 js 运行时,但我在异步方面遇到了一些麻烦。 我有一个函数,它是 js 领域的入口点: fn message_from_worker(


对象变量作为键和值赋值[重复]

这个语法在JS中叫什么: 让名称=“asdf”; 让 obj = { 名称 }; // <-- this


如果没有定义如何添加全局变量

当 d3.js 迁移到版本 4 时,对 Api 进行了重大重写,并对模块化打包进行了更改。 我不想升级到 d3.js 版本 4,但我必须重写 React/redu...


在 Electron-vite 中包含本地 JavaScript 库的 TypeScript 无法正确编译

我正在尝试将本地库导入到 vite-electron TypeScript 项目中。请原谅我对 vite-electron 和 JS 捆绑生态系统缺乏了解,我是 JS 和 TS 开发的新手......


在编写返回 jsx 的脚本时使用 .js 文件扩展名

我开始使用 React 作为我选择的 ui 框架。在我浏览文档时,我注意到当使用 create-react-app 脚本启动新的 React 样板时,他们使用了 .js


Adminjs 实现问题“无法在模块外部使用 import 语句”

我是 Node Express js 的新手。只是尝试使用express js 编写后端代码。现在我想在我的项目中添加adminjs。由于我是本节的新手,因此我遵循了


反应本机布局组件的编译是否与逻辑不同?

我试图理解 React 本机视图/布局代码的编译方式与逻辑代码的不同。我知道 JS 逻辑保存在 JS 包中并与本机应用程序通信...


从 pact-js 存储库运行示例时无法找到本机模块错误

我正在运行 pact-js 存储库中的消费者示例。重现下面的示例(我修改了文件以避免打字稿): 从 '@pact-foundation/pact' 导入 { PactV3, MatchersV3 }; 导入...


Next JS (React) 不理解 stencil Prop

按照目前的流程,React 在我们的 SPA 中托管模板 JS 组件,像往常一样,随着范围的增加,它现在对 SEO 和性能产生影响,而且重点是我们无法改变主要架构......


研究新的.NET8 Blazor Web 应用程序。如何将 .js 添加到 .razor 页面?

应该很简单,但是我真的找不到将.js添加到项目中的方法。 我使用如下简单代码创建了一个 .razor 页面: @页面“/文本” @rendermodeInteractiveAuto @inj...


如何在 JS 源中显示行级分析?

我读过这篇关于分析运行时性能的文章。下图是从这篇文章复制的。如果您检查此图像,接下来会出现黄色突出显示的 JS 文件执行时间提示...


通过 CDN 提供 JS 小部件

我需要做这件事,我必须在 vanilla js 中制作一个小部件(可交互)并通过 CDN 提供服务。对于服务,我想到了 Google 的 Cloud CDN。最终目标是一个模块化的小部件,任何人...


Laravel 和 Vue Js 应用程序中的脚本无法使用响应正文(原因:CORS 缺少允许来源)

开发 Laravel 10 + Vue Js 3 应用程序两个项目文件是分开的。我也有以下 api.php 登录路线 路线::post('/login', [LoginController::class, '提交']); 并使用


Next js firebase(firestore数据库)自动生成的id错误

嗨,谁能告诉我,当我想在下一个 js 中获取页面的详细信息并且我从 firestore 数据库获取数据时,这对我来说是这样的 Firebase 初始化成功 page.js:32路由器。


三个js - 不同灯光的不同阴影贴图

我有一个带有两个灯光的三个 js 场景。我希望灯光 A 使用 PCFShadowMap,灯光 B 使用 BasicShadowMap。如何实现这一目标? 我主要关心的是性能。我正在寻找一种投射方式


带有 JS 模块模式的 Rails 导入映射错误:“net::ERR_ABORTED 404(未找到)”

我正在使用 Importmap for Rails 7 实现 JavaScript 模块模式,并且遇到与在生产环境中加载自定义帮助程序 JS 文件相关的错误。 我的应用程序/javascript 有一个


如何在没有js的情况下在页面内容上增加下拉菜单?

我的主页的菜单包括一个下拉菜单。我使用 html、css 和 php,但不使用 js。我无法让下拉菜单不下推页面内容,而是打开内容。你可以吗


重新打开Word js-addin“尝试打开外部应用程序”确认对话框

当我单击 Word JS-addin 中打开 ms-word:// url 的超链接时,我会看到以下确认对话框: 但是,当我选中复选框并单击“取消”时,我从未收到此对话框


如何在preload()中自定义p5.js默认加载动画?

在p5.js中,当您使用预加载功能加载图像/声音时,会显示默认加载屏幕。它看起来像这样: 这很好,但在我的游戏中,这个文本与黑色背景融为一体......


如何在Vite React JS项目中设置和使用别名?

我正在开发一个使用 Vite 作为捆绑器的 React JS 项目,我想使用别名改进我的项目的模块导入路径。有人可以提供有关如何设置和使用的分步指南吗


下面的Browser Engine图和JS Runtime图之间的桥梁是什么?

我一直在阅读有关浏览器如何工作以及浏览器的组件是什么的内容。我看到了各种关于浏览器如何解析 JS 和渲染过程等的文章,但我不是


在 JS 中在任何视口上将剪辑路径插入正方形

您好,这是一个显示我的问题的代码笔 我正在尝试进行 JS 计算来更改 div 的剪辑路径插入,以便它显示一个正方形。 有一个限制:正方形宽度有 t...


fullcalendar js 当长事件添加标题时每周都会出现。这是让标题出现一次的方法吗?

fullcalendar js 当长事件添加标题时每周都会出现。这是让标题出现一次的方法吗?我在 v5 和 v6 上尝试代码,标题每周都会出现。 ...


使用 JS 和 PHP SQL 查询获取 JSON 数据

函数 fetchBooks() { fetch('圣经书.php') .then(响应=> { 如果(!response.ok){ throw new Error('网络响应不正常'); } 返回response.json(); ...


如何在 next js 13 的客户端组件中处理 firebase 和 webrtc 任务

我创建了一个 next js 13 应用程序来与 webrtc 和 firestore 共享相机源。这是我的 page.tsx。我无法使这个服务端因为我使用了反应钩子并且我无法将其移动到客户端


p5.js 在网页编辑器的 preload() 函数中加载时卡住了

我正在使用p5.js,我和我的朋友正在开发一个游戏来娱乐。我们正在使用网页编辑器。我们使用预加载功能导入了一些资源。这将显示加载屏幕。然而,...


© www.soinside.com 2019 - 2024. All rights reserved.