[英]JavaScript function importing doesn't work properly
我制作了一个函数,并尝试将该函数导入另一个js文件,但是它不起作用。 如果我写“ elements.searchInput.value;” 如果我执行“ console.log(elements.searchInput.value)”,它将无法正常工作。 我在做与参考文件完全相同的操作,只是想知道为什么我的代码不起作用。
index.js
import "./../styles/style.scss";
import Search from './models/Search';
import * as searchView from './views/SearchView';
import { key, proxy } from './config';
import { elements } from './views/Base';
const state = {};
const controlSearch = async () => {
const query = searchView.getInput(); // <- This doesn't work
console.log(query) // Get nothing
if(query) { // <- Can't get in to this part
state.search = new Search(query);
console.log("New Search", state);
}
}
elements.searchForm.addEventListener('submit', e => {
event.preventDefault();
controlSearch();
});
searchView.js
import { elements } from './base';
export const getInput = () => {
elements.searchInput.value; // This code won't show up in controlSearch function
export const clearInput = () => {
elements.searchInput.value = '';
};
base.js
export const elements = {
searchForm: document.querySelector('.search'),
searchResult: document.querySelector('.movie_list'),
searchInput: document.querySelector('.search__field')
}
Search.js
import { key } from '../config';
export default class Search {
constructor(query) {
this.query = query;
}
async getResults() {
try {
const res = await axios(`http://`);
this.result = res.data.results;
}
catch (error) {
alert(error);
}
}
}
Getter函数必须返回一个值。
const yourFunction = () => { return yourVariable };
或使用箭头功能可以使用:
const yourFunction = () => yourVariable;
这是你的问题
export const getInput = () => {
elements.searchInput.value;
您没有返回任何更改
export const getInput = () => elements.searchInput.value;
要么
export const getInput = () => {
return elements.searchInput.value;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.