Проблемы с атрибутом DeploymentItem

Используйте действие admin_enqueue_scripts и метод wp_enqueue_script для добавления пользовательских сценариев в интерфейс администратора.

Это предполагает, что у вас есть myscript.js в папке плагинов. Измените соответственно. Дескриптор my_custom_script должен быть уникальным для вашего модуля и скрипта.

function my_enqueue($hook) {
    // Only add to the edit.php admin page.
    // See WP docs.
    if ('edit.php' !== $hook) {
        return;
    }
    wp_enqueue_script('my_custom_script', plugin_dir_url(__FILE__) . '/myscript.js');
}

add_action('admin_enqueue_scripts', 'my_enqueue');

94
задан Kiquenet 17 October 2017 в 08:14
поделиться

3 ответа

DeploymentItem немного беспорядок.

Каждый файл в вашем решении будет иметь параметр «Копировать в папку вывода» в VS.NET. Вам нужно, чтобы это было «Всегда копировать» (или подобное), чтобы файлы помещались в папку вывода.

Убедитесь, что у вас есть этот набор для новых файлов. Если у вас нет этого набора, то файлы не будут скопированы в выходную папку, а затем они не могут быть развернуты из выходной папки в папку, где MSTest делает это.

Лично, если у меня есть файлы, которые мне нужны для моих модульных тестов. Я обнаружил, что встраивание этих файлов в качестве ресурсов в сборку и «распаковка» самой сборки во время тестов является более предсказуемым способом решения задач. YMMV.

примечание: Эти комментарии основаны на моем опыте работы с VS2010. Комментарии к моему ответу предполагают, что это не проблема VS2012. Я все еще поддерживаю комментарии о том, что использование встроенных ресурсов требует меньше "магии" и для меня делает этап "упорядочивания" моих модульных тестов более явным.

106
ответ дан 24 November 2019 в 06:00
поделиться

Если вы зайдете в свой файл .testrunconfig и в разделе deployment снимите галочку с "Enable Deployment", тесты будут запускаться в своем обычном месте, и все будет работать как при запуске приложения вне модульного теста.

10
ответ дан 24 November 2019 в 06:00
поделиться

В VS2010 в моих настройках Local.testsettings параметр «Включить развертывание» был снят, а атрибут DeploymentItem не работал. Я проверил, все работает нормально. Надеюсь, это поможет!

74
ответ дан 24 November 2019 в 06:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: