小编Mik*_*kko的帖子

使用默认值合并Vue props

我的Vue组件中有一个选项prop,它有一个默认值.

export default {
  props: {
    options: {
      required: false,
      type: Object,
      default: () => ({
        someOption: false,
        someOtherOption: {
          a: true,
          b: false,
        },
      }),
    },
  },
};
Run Code Online (Sandbox Code Playgroud)

如果options对象作为prop传递给组件,则替换默认值.例如,传递时{ someOption: true },现在options对象仅包含该值.

如何传递部分对象并使用给定值覆盖默认值而不是替换整个对象?

javascript vue.js vue-component

7
推荐指数
1
解决办法
7523
查看次数

PhpStorm中的多行字符串背景颜色

如何在PhpStorm中删除或更改ES6多行字符串中的绿色背景?

在这里查看示例.

javascript jetbrains-ide phpstorm ecmascript-6

5
推荐指数
1
解决办法
497
查看次数

使用 $.ajax 向 PHP 发送布尔值

我使用 jQuery 将数据发布到 PHP 后端$.ajax

$.ajax({
    url: "server.php",
    method: "post",
    data: {
        testVariable: true
    }
});
Run Code Online (Sandbox Code Playgroud)

在服务器端,我尝试die(gettype($_POST["testVariable"]));返回string.

我正在尝试将从 Javascript 发布的 JSON 数据保存到 MySQL 数据库,但布尔值被引用,这不应该发生。

插入的是{"testVariable": "true"}什么,我需要的是{"testVariable": true}. 我该如何实现?

php jquery json

5
推荐指数
1
解决办法
1572
查看次数

Vue中的动态组件点击事件

我使用v-for以下方式渲染Vue组件:

<component
    v-for="component in components"
    :is="component.type"
    @click="myFunction(component.id)">
</component>
Run Code Online (Sandbox Code Playgroud)

单击呈现的组件不会触发该myFunction方法。但是,单击手动插入的组件可以:

<div @click="myFunction('...')"></div>
Run Code Online (Sandbox Code Playgroud)

如何纠正呢?

javascript vue.js

5
推荐指数
2
解决办法
7943
查看次数

如何将数据传递给Vue.js中的单个文件组件?

我有一个文件组件header.vue:

<template>
  <h1>{{text}}</h1>
</template>

<script>
  export default {
    data() {
      return {
        text: 'Header text',
      };
    },
  };
</script>
Run Code Online (Sandbox Code Playgroud)

我在我的代码中要求如下

const Header = require('components/header.vue');
Run Code Online (Sandbox Code Playgroud)

并称之为:

const header = new Vue({
  el: '#header',
  data: {
    text: 'New header text',
  },
  render: h => h(Header),
});
Run Code Online (Sandbox Code Playgroud)

该组件已呈现,但文本说Header text而不是New header text.为什么?

vue.js vue-component

4
推荐指数
2
解决办法
4889
查看次数

在 Vue 中保持列表组件处于活动状态

我有一个组件列表,我使用v-for. 并非所有组件都同时显示。我使用slice.

这些组件不应重新渲染,因为其中一些具有用户输入的数据,而其中一些执行与网络相关的任务。

我尝试使用<keep-alive>. 但是,这仅呈现第一个组件。

<keep-alive>
    <component :is="component.type" :key="component.id" v-for="component in components">
</keep-alive>
Run Code Online (Sandbox Code Playgroud)

如何保持组件的动态列表处于活动状态?

vue.js vue-component

4
推荐指数
2
解决办法
6790
查看次数

重新启动 Vue 过渡

我在Vue中定义了一个过渡组

<transition-group
        name="staggered-scale"
        tag="div"
        :css="false"
        @before-enter="animationBeforeEnter"
        @enter="animationEnter"
        appear>
    <span v-for="i in range" :key="i" :data-index="i">{{ i }}</span>
</transition-group>
Run Code Online (Sandbox Code Playgroud)

我有一些控制动画的 Javascript 钩子。

animationBeforeEnter(el) {
  el.style.transform = 'scale(0.1)';
}

animationEnter(el, done) {
  const delay = el.dataset.index * 30;
  setTimeout(() => {
    el.style.transform = 'scale(1.0)';
    done();
  }, delay);
}
Run Code Online (Sandbox Code Playgroud)

当组件最初渲染时,动画播放得很好。但是,我可以通过编程方式触发动画再次运行吗?

javascript vue.js

1
推荐指数
1
解决办法
1810
查看次数