小编Ind*_*the的帖子

反应Express pm2部署

情境

我已经制作了React应用以及API的快速服务器,两者都是独立的。我尚未在Express应用中包含react文件夹。我期待使用PM2之前/之后的脚本来部署它,但是我很难真正实现我的想法。

目标

  1. 我想同时为客户端和服务器运行npm install,因为以后可能需要删除/添加软件包。
  2. 我在想像npm安装后,我想构建react应用程序,然后移动该文件夹以供表达(我不知道是否可以提供不在父目录中的用于表示静态内容的目录路径)。
  3. 然后,我想启动快速服务器,该服务器最终将提供反应构建文件。

现在我的目录结构是

.
??? client
??? ecosystem.config.js
??? server
Run Code Online (Sandbox Code Playgroud)

我很困惑,因为我没有找到实现这一目标的任何资源。另外,我不确定pm2部署脚本是否可以实现此功能,或者我需要编写自己的bash脚本来完成某些工作,然后pm2仅启动服务器。

这只是我所做的,这似乎是完全错误的

生态系统.config.js

module.exports = {
  apps : [{
    name: 'API',
    cwd: 'server',
    script: 'server.js',
    args: 'one two',
    instances: 1,
    autorestart: true,
    watch: false,
    max_memory_restart: '1G',
    env_production: {
      NODE_ENV: 'production'
    }
  }],

  deploy : {
    production : {
      user : 'node',
//      host : '212.83.163.1',
//      ref  : 'origin/master',
//      repo : 'git@github.com:repo.git',
//      path : '/var/www/production',
      'post-deploy' : 'cd client && npm run build' …
Run Code Online (Sandbox Code Playgroud)

express reactjs pm2

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

Vuejs 模糊自定义选择元素不起作用

设想

我已经构建了自定义的自动完成选择组件,它可以自动完成,但此外,如果没有找到结果,我们可以添加新值。(我发现在 vue-select 模块中是不可能的)。

代码笔链接

我尝试使用@blur,但如果我点击该项目,菜单就会关闭。我已自定义 div 作为项目列表,用于选择如果焦点位于文本字段上,将切换哪个项目。如果我删除模糊,它可以完美运行,但它不会关闭它,我在文本字段外单击。 我已经复制了用于处理 keyup、keydown、keyenter、滚动、处理从 vue-select 中选择的指针的函数

代码

    <template>
    <div class="vselect">
        <div class="form-group">
            <label>{{label}}</label>
            <p class="control has-icon has-icon-right">
                <input ref="selected" @keyup="filterSelect($event)" @focus="onFocus" v-model="mutableValue" type="text" class="form-control"
                    @keydown.up.prevent="onKeyUp" @keydown.down.prevent="onKeyDown" @keydown.enter.prevent="onKeyEnter" @blur="onBlur">
            </p>
        </div>
        <div ref="dropdown" class="my-dropdown" v-show="toggled" v-if="options">
            <div v-for="(item,index) in filterList" :class="{'my-dropdwon--item':true,active:index === pointer}" @click="handleItemClick(item)"
                @mouseover="pointer = index">{{item}}</div>
        </div>
    </div>
</template>

<script>
    export default {
        name: 'VSelect',
        props: {
            'options': Array,
            'label': String,
            'value': String,
        },
        data() {
            return {
                selected: null,
                toggled: false,
                filterList: …
Run Code Online (Sandbox Code Playgroud)

javascript vue.js

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

标签 统计

express ×1

javascript ×1

pm2 ×1

reactjs ×1

vue.js ×1