簡體   English   中英

如何在 js 文件中將 ZCCADDEDB567ABAE643E15DCF0974E503Z 集合傳遞給 function?

[英]How do I pass a Mongoose Collection to a function in a js file?

我正在做一個項目,我希望能夠根據表單輸入搜索摩托車數據庫,該表單輸入類似於您在頂部選擇 My Garage 后在 Revzilla.com 上找到的內容。 此表格將在項目中的多個位置使用。

我將 bikeLists 從我的路線/索引文件傳遞給索引


const express = require('express');
const router = express.Router();
const bikeDBModel = require('../models/bike')
const mongoose = require('mongoose');
const { collection } = require('../models/bike');

const BikesDBConnection = mongoose.connection.useDb('bikes')


router.get('/',(req,res)=>{;
    const collection = BikesDBConnection.collection('harley-davidson')//Harley is the only Maker supported at the moment(change to all-bikes) soon.
    res.render('index', {'bikesList':collection})
});

module.exports = router;

我可以讓它顯示在我的 view/index.ejs 文件中


<%= bikesList %> 

<%- include('./partials/part-bikeSelector.ejs') %>

**更新:**根據我的研究,我發現您應該能夠通過執行以下操作使其工作,但我仍然收到“未定義自行車列表”錯誤


<%- include('./partials/part-bikeSelector.ejs', {bikesList:bikeList) %>

但無法將其獲取到 part-bikeSelector.ejs 下的包含文件


<%= bikesList %> 

<form action="" method="post" class="bikeSelectorForm">
    <div class="yearSelect">
        <select name="bikeYear" id="bikeYear" onchange="getBikeModels()">
            <option disabled selected value>Year</option>
            <% for( let i = new Date().getFullYear(); i >= 2000; i-- ) { %>
                <option value="<%= i %>"><%= i %></option>
            <% } %>
        </select>
    </div>
    <div class="makeSelect">
        <select name="bikeMake" id="bikeMake">
            <option disabled selected value>Motorcycle Make</option>
            <option value="Harley">Harley Davidson</option>
            <optgroup label="Coming Soon">
                <option disabled value="Yamaha">Yamaha</option>
                <option disabled value="Honda">Honda</option>
                <option disabled value="Kawasaki">Kawasaki</option>
                <option disabled value="Indian">Indian</option>
            </optgroup>
        </select>
    </div>
</form>

<script src="/js/bikeSelector.js"></script>

理想情況下,我想將它進一步傳遞給從 part-bikeSelector.ejs 鏈接的純 js 文件


const bikeYear_formField = document.getElementById('bikeYear');

//get list of models based on year and make of form fields
function getBikeModels() {
    console.log(bikesList);
}

看着這一切都錯了。 答案是重新考慮我的方法。 我創建了一個 REST API,我可以在需要時獲取所有數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM